AB Workshop Automacao REST Web Mobile -...
Transcript of AB Workshop Automacao REST Web Mobile -...
![Page 1: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/1.jpg)
Testes vão muito além do TDDAutomação para REST, Web e Mobile
![Page 2: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/2.jpg)
EliasNogueira
adaptworks.com.br
eliasnogueira
fb.com/elias.nogueira.teste
Agile Coach & Trainer na Adaptworks
QA Engineer
Professor de Pós Graduação na Unisinos/RS
eliasnogueira.com
![Page 3: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/3.jpg)
PORQUESEPREOCUPARCOMQUALIDADE?
![Page 4: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/4.jpg)
PORQUEAUTOMATIZAR?
TesteManual:maisrápidodecriarmaismuitolentoparaexecutar.
TesteAutomatizado:criaçãorelativamentedemoradamasmuitorápidoparaexecutar.
Execuções
Tempo
para
criação
Manual
Automatizado
![Page 5: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/5.jpg)
PIRÂMIDEDEAUTOMAÇÃODETESTE
https://www.mountaingoatsoftware.com/blog/the-forgotten-layer-of-the-test-automation-pyramid
![Page 6: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/6.jpg)
JSON
JavaScript Object Notation
Éindependentedelinguagemdeprogramação
NãorequerJavaScript parautilizarenãoédependentedeJavaScript
ÉbaseadonoObjetoLiteraldeJavaScript– var gato = {nome: ”Felicia”, idade: 2}
UmtextoemJSONpodeserconvertidodiretamenteparaumObjetoJavaScript
![Page 7: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/7.jpg)
JSON
![Page 8: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/8.jpg)
LinksÚteis
http://www.json.org
http://www.jsoneditoronline.org
http://www.w3schools.com/json/
https://www.udemy.com/json-training-a-javascript-object-notation-course
JSON
![Page 9: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/9.jpg)
REpresentational State Transfer (REST)
ÉumestilodearquiteturautilizadoparacriaçãodeAPIs
TrabalhasobreprotocolosHTTPusandoverbosPOST,GET,PUT,DELETE,OPTION,PATCHeHEAD
UtilizarespostasnoformatoJSONouXML
REST
![Page 10: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/10.jpg)
GeralmenteligadosamétodosCRUD(Create,Read,Update,Delete)
Método AçãoGET ReceberinformaçõesPOST CriarinformaçõesPUT CriarouatualizarinformaçõesDELETE Removerinformações
REST
![Page 11: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/11.jpg)
Oquefaz? Verbo URL Exemplo
Listapessoas GET /api/person /api/person
Retornaapessoapeloid* GET /api/person/:id /api/person/27
Adicionaaspessoas* POST /api/person /api/person
Atualizaumapessoapelo id* PUT /api/person/:id /api/person/33
Removeumapessoa peloid DELETE /api/person/:id /api/person/52
*Necessárioenviaroscamposcomoparâmetros
REST
![Page 12: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/12.jpg)
LinksÚteis
http://rest.elkstein.org
https://www.infoq.com/br/articles/rest-introduction
REST
![Page 13: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/13.jpg)
Há várias formas deefetuar testesmanuais em APIsREST
Asmais utilizadas são vialinha decomando oubrowser:
CURL(linha decomando)PostMan (plugindoGoogleChrome)RestEasy(plugindoFirefox)RestClient (plugindoFirefox)
CURL- https://curl.haxx.sePostMan - https://www.getpostman.com
RestClient - https://addons.mozilla.org/en-US/firefox/addon/restclient/
TESTEMANUALREST
Rest Easy - https://addons.mozilla.org/en-us/firefox/addon/rest-easy/
![Page 14: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/14.jpg)
Método URLdaAPI
Corpo
Resposta
![Page 15: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/15.jpg)
PréCondições– RESTEasy aberto– URLbasecomohttp://eliasnogueira.com/tdc/workshop
Passos1. InformeométodoGET2. InformeaURLbasemais:
• api/person3. CliqueemSend
ResultadosEsperados– Listadepessoasexistentesnosistema
TESTEMANUALREST- EXERCÍCIO1Obtendopessoas
![Page 16: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/16.jpg)
TESTEMANUALREST- EXERCÍCIO2Criandoumnovoregistro(pessoa)
PréCondições– RESTEasy aberto– URLbasecomohttp://eliasnogueira.com/tdc/workshop
Passos1. InformeométodoPOST2. InformeaURLbasemais:
• api/person3. InformenoBodyosdadosqueserão enviados,noformato JSON
{ "name":"Joao Carlos", "address":"Av Paulista, 1000", "hobbies":"Skate”
}4. CliqueemSend
ResultadosEsperados– Statuscode =200naabaResponseHeaders– PessoacadastradaedadossendoexibidosnaabaResponseBody
Observação:anotar oIDgerado
![Page 17: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/17.jpg)
TESTEMANUALREST- EXERCÍCIO3Pesquisandopeloregistroinserido
PréCondições– RESTEasy aberto– URLbasecomohttp://eliasnogueira.com/tdc/workshop
Passos1. InformeométodoGET2. InformeaURLbasemais:
• api/person/{id}3. O{id} deve ser oIDanotado anteriormente4. CliqueemSend
ResultadosEsperados– Statuscode =200naabaResponseHeaders– DadosdapessoasendoexibidosnaabaResponseBody
![Page 18: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/18.jpg)
TESTEMANUALREST- EXERCÍCIO4Alterandooregistroinserido
PréCondições– RESTEasy aberto– URLbasecomohttp://eliasnogueira.com/tdc/workshop
Passos1. InformeométodoPUT2. InformeaURLbasemais:
• api/person/{id}3. O{id} deve ser oIDanotado anteriormente4. InformenoBodyosdadosqueserão enviados,noformato JSON
{ "name":”SEU NOME",
}
5. CliqueemSend
ResultadosEsperados– Statuscode =200naabaResponseHeaders– DadosdapessoaalteradasendoexibidosnaabaResponseBody
![Page 19: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/19.jpg)
TESTEMANUALREST- EXERCÍCIO5Removendooregistroinserido
PréCondições– RESTEasy aberto– URLbasecomohttp://eliasnogueira.com/tdc/workshop
Passos1. InformeométodoDELETE2. InformeaURLbasemais:
• api/person/{id}3. O{id} deve ser oIDanotado anteriormente4. CliqueemSend
ResultadosEsperados– Statuscode =200naabaResponseHeaders– ResponseBodycominformação success:true
![Page 20: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/20.jpg)
ExisteumagamadeferramentasutilizadasparaautomaçãodeenviodeverbosREST
NósutilizaremosoREST-Assuredhttps://github.com/jayway/rest-assured
TESTEAUTOMATIZADOREST
![Page 21: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/21.jpg)
EleéumaDLSdefácilutilizaçãoparaautomatizarserviçosRESTondepoderemosvalidarosresultadosesperados
AsintaxedeutilizaçãoémuitoparecidacomoGiven-When-Then doBDD
TESTEAUTOMATIZADOREST
![Page 22: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/22.jpg)
TESTEAUTOMATIZADOREST
![Page 23: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/23.jpg)
EstruturadaClassedeTeste
1.Import EstáticoÉnecessárioefetuardoisimports estáticos
TESTEAUTOMATIZADOREST
![Page 24: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/24.jpg)
EstruturadaClassedeTeste
2.Pre CondiçãoÉnecessárioinformar
• URI:URLbasedeacessoaAPI• basePath:contextodeacessoaAPI
TESTEAUTOMATIZADOREST
![Page 25: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/25.jpg)
EstruturadaClassedeTeste
3.TesteutilizandooscomandosdoRestAssuredCriaçãodeumcenáriodetesteparaexecução
TESTEAUTOMATIZADOREST
![Page 26: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/26.jpg)
Passos1. Criarumpacotechamadotdc.workshop.rest napastasrc/test/java2. CriarumaJUnitTestCase chamadaTestePessoaApi3. Desenvolveramesmaclassedescritaabaixo
TESTEAUTOMATIZADOREST- EXERCÍCIO1CriandoaEstrutura
![Page 27: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/27.jpg)
Passos1. AdicionarummétododetestechamadotesteValidacaoPessoa2. EfetuarumachamadaGETparaperson/{id}einformeumIDconhecido3. Validaroresultadodecadaatributoretornado
TESTEAUTOMATIZADOREST- EXERCÍCIO2ObterumaPessoapeloID
![Page 28: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/28.jpg)
Passos1. Criarumnovopacoteemsrc/main/java chamadotdc.workshop.rest2. NestepacotecriarumaclassechamadaPessoa3. Adicionarosatributos,construtoremétodos abaixo
TESTEAUTOMATIZADOREST- EXERCÍCIO3CriarumanovaPessoa
![Page 29: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/29.jpg)
Passos1. AdicionarummétododetestechamadotesteInserirPessoa2. EfetuarumPOSTpassandoosdadoscomoJSON pelabody3. Validar os valores deatributo dapessoa cadastrada
TESTEAUTOMATIZADOREST- EXERCÍCIO3CriarumanovaPessoa
![Page 30: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/30.jpg)
Passos1. AdicionarummétododetestechamadotesteAlterarPessoa2. EfetuarumachamadaPUTparaperson/{id}einformeumIDconhecido3. Adicionar ocontentType como JSON einformar na bodyumnovonome
TESTEAUTOMATIZADOREST- EXERCÍCIO4AlterarumaPessoa
![Page 31: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/31.jpg)
Passos1. AdicionarummétododetestechamadotesteRemoverPesspa2. EfetuarumachamadaDELETEparaperson/{id}einformeumIDconhecido3. Validar oretorno dostatus como true
TESTEAUTOMATIZADOREST- EXERCÍCIO5RemoverumaPessoa
![Page 32: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/32.jpg)
PROBLEMADOTESTEMANUALWEB
5 5
2
7
10
3
1
Ciclo1 Ciclo2 Ciclo3 Ciclo4
Núm
erode
Fun
cion
alidades
1semana 1semana 1semana
Funcionalidadeexistente NovaFuncionalidade
![Page 33: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/33.jpg)
CriarumanovaPessoa
Passos1. ClicarnobotãoAdicionar2. Preencherosseguintescampos
• Nome:<seunome>• Endereço:<suacidade>• Hobbies:<seuhobbie>
3. ClicarnobotãoSalvar
ResultadosEsperados1. Voltarparaalistagemdepessoas2. Apresentarapessoainseridana
listagem
CENÁRIOTESTEWEB
PesquisarumaPessoa
Passos1. Preencherocampo”Pesquisar…”
comoNomecadastradoanteriormente
ResultadosEsperados1. Apresentarapenasa
linha/registroreferenteaonomepesquisado
![Page 34: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/34.jpg)
Parainteragircomoselementosdeve-mosconhecê-los,logodevemosinspeciona-losparadescobrirosseusatributoseaformacomqueiremosidentificá-losnoscript
OsbrowsersmaismodernospossuemafuncionalidadedeinspecionarelementosHTML,queéapráticadedescobrirocódigo-fonteespecificamentedeumelemento.
NósusaremosoFirebug,quepodeserextensívelatravésdeplugins paranosajudaralocalizaralgunselementos
PodemosabriroFirebug pelomenuTools ->WebDeveloper ->Firebug ->OpenFirebug ouclicandonoíconedatoolbar
INSPECIONANDOELEMENTOS
![Page 35: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/35.jpg)
Parainspecionarcliquenobotãodeinspeçãoeapóscliquenoelementoquevocêdesejainspecionar
INSPECIONANDOELEMENTOS
Botãodeinspeção
![Page 36: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/36.jpg)
OSeleniumWebDriveré uma APIparainteração comelementos webem umbrowser,simulando asmesmasações deusuário
http://seleniumhq.org
AUTOMAÇÃOWEB
![Page 37: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/37.jpg)
OSelenium baseia-seemtrêsprincípiosbásicosparaautomaçãoweb:
– Navegação:aberturadobrowser,acessoapáginasecontroledenavegação
– Interrogação:identificaçãodeumelemento
– Manipulação:interaçãocomoelemento(clicks,preenchimentos,etc…)
AUTOMAÇÃOWEB
![Page 38: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/38.jpg)
Navegação
OpontodepartidaparaautilizaçãodoWebDriver éaclasseWebDriver,quequandoinstanciadajáabreobrowser(driver)referenciado
Jáanavegaçãoàumapáginaéfeitapelocomandoget()
AUTOMAÇÃOWEB
![Page 39: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/39.jpg)
Passos1. Criarumpacotechamadotdc.workshop.web napastasrc/test/java2. CriarumaJUnitTestCase chamadaAdicionarPessoaTeste3. AlteraonomedométododetesteparatesteAdiconarPessoa()4. Desenvolveramesmaclassedescritaabaixo5. Executeoscript(MenuRun ->Run)oucliqueem
ResultadosEsperados1. AbriroFirefox eacessar apáginadoWorkshop
AUTOMAÇÃOWEB- EXERCÍCIO1CriaraEstruturaeNavegação
![Page 40: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/40.jpg)
Interrogação
AinterrogaçãoéaformacomqueoWebDriver iráencontraroselementosnatela.IssoéfeitoatravésdométodofindElement()
Estemétodorecebecomoparâmetroaformadelocalizar(estratégia)
AUTOMAÇÃOWEB
By.id Localiza oelementopeloatributoid
By.name Localizaoelementopeloatributo name
By.tagName Localizaoelemento porumatag
By.linkText Localizaoelemento pelonomedolink
By.partialLinkText Localiza oelementopelonomeparcialdolink
By.cssSelector LocalizaoelementoporCSSSelector
By.className Localizaoelementopeloatributoclass
By.xpath Localizaoelementoporxpath
driver.findElement(By.estrategia)
![Page 41: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/41.jpg)
Manipulação
Apósterencontradooelementoqueiremosinteragiréprecisoinformalqualotipodeinteração
AUTOMAÇÃOWEB
Interação Descrição
click() Efetuaumcliquenoelemento
clear() Limpaumelemento dotipotextoousimilar
sendKeys() Digitaemumelemento dotipotextoousimular
getText() Pegaotextode umaelemento
![Page 42: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/42.jpg)
Localizandoporid ouname
SãosempreosprimeirosquedevemosidentificarnoHTML
ExemplonoHTML:––
AUTOMAÇÃOWEB
idname
![Page 43: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/43.jpg)
LocalizandocssSelector
Formadelocalizaçãoquandonãopossuímosid ouname.Podemosutilizá-loatravésdeaidentificaçãodeumaclasseCSSoumesmoporatributosevaloresdeumelemento
Exemploporatributoevalor
Exemplopelaclassecss
AUTOMAÇÃOWEB
![Page 44: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/44.jpg)
Passos1. ClicarnobotãoAdicionar2. Preencherosseguintescampos:
– Nome:<seunome>– Endereço:<seuendereco>– Hobbies:<seuhobbie>
3. ClicarnobotãoSalvar4. Executeoscript
AUTOMAÇÃOWEB- EXERCÍCIO2InterrogareInteragircomelementos
ResultadosEsperados1. Redirecionarapáginaparaalistade
pessoas,comapessoacadastradapresentenalista
![Page 45: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/45.jpg)
Validaçãodosdados
Precisamosvalidarosresultadosesperadoseexisteduasformas:– Garantindooretornodeverdadeiro/false– Garantindoaigualdadedeinformações
assertTrueGarantequealgoqueestamosprocurandoéverdadeiro
assertEqualsGarantequeduasinformaçõessãoiguais
AUTOMAÇÃOWEB
![Page 46: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/46.jpg)
Passos1. Pegueocódigo-fontedapáginaeo
coloqueemumavariável2. InsiraumassertTrue paracadaitem:
• Nome• Endereco• Hobbie
3. Executeoscript
AUTOMAÇÃOWEB- EXERCÍCIO3Validarosdadosinseridos
ResultadosEsperadosValidaçãodetodosositensefetuadacomsucesso(nãoapresentarerrosnaexecução)
![Page 47: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/47.jpg)
FechandooBrowser
Érecomendadoquefechamosobrowserapósaexecuçãodetesteporváriosmotivos:
1. Paranãogerarefeitoscolateraisnaexecuçãodoteste2. Paraqueocachenãointerfiraemalgumteste3. Paranãoocuparmemórianamáquinadeexecuçãodeteste
driver.quit()Fechaobrowser,encerrandoqualquerjanelaabertapelaautomação
AUTOMAÇÃOWEB
![Page 48: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/48.jpg)
Esperas
ExistemduasformasdeesperanoWebDriver:
– Implícita:apenasumcomandonoiníciodaaberturadobrowserfazcomqueocorraumaespera,portempodeterminado,porqualquerelementoqueestamosinteragindo
– Explícita:colocamosumcomandoparacadaesperanecessáriaantesdainteraçãodoelemento
NósusaremosaesperaExplicitaporumdosprincipaisfatos:saberexatamenteondetermosqueesperarporalgumelementoparaseguirinteragindocomosdemais
AUTOMAÇÃOWEB
![Page 49: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/49.jpg)
EsperaExplícita
OpontoinicialdaesperaExplícitaéaclasseWebDriverWait,quetrazumaespera“global”paraoscriptdeteste.
Otempodeesperaéumaesperadotipo”até”.Ex:secolocamos30segundosdeespera,eoelementofoiapresentadoem4segundos,eleseguiráaexecuçãoaoinvésdeaguardarosoutros26segundosrestantes
AUTOMAÇÃOWEB
Necessitadodriver/browseratual
Tempodeespera
![Page 50: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/50.jpg)
EsperaExplícita
Ométodomaiscomumdeutilizaçãoéountil
Ligamosountil aumaExpectedConditions queeumaclasseestáticaquepossuiumasériedemétodosprontosdeespera
AUTOMAÇÃOWEB
Umdosmétodosdeespera Elementoqueseráaguardado
![Page 51: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/51.jpg)
EsperaExplícita
Utilizamos,nagrandemaioriadasvezes,umadasduasExpectedConditions abaixo:
– presenceOfElementLocatedQuandooelementonãoexistenoHTML,elogoumaaçãoéexecutadaeleéinserido
– visibilityOfElementLocatedQuandooelementoexistenapágina,masestáinvisível
AUTOMAÇÃOWEB
![Page 52: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/52.jpg)
AUTOMAÇÃOWEB
![Page 53: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/53.jpg)
Passos1. EfetueumapesquisanacaixaPesquisar
comoseunome2. Aguardeoelementodatabelareferente
aonomeaparecer3. Validetodososdadosapresentados:
• Nome• Endereco• Hobbie
4. Executeoscript
AUTOMAÇÃOWEB- EXERCÍCIO4Adicionarumaesperaaoscript
ResultadosEsperadosValidaçãodetodosositensefetuadacomsucesso(nãoapresentarerrosnaexecução)
![Page 54: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/54.jpg)
Você já deve ter feito os passos daspré condições desteworkshop,masvalelembrar oqueé necessário paraautomatizaruma app:
– Arquivo .apk ou acesso ao código-fonte daapp– AndroidSDKcom:
• Tools• Build-tools• Platform-tools• SDKPlatforma daversão escolhida• Processador daversão escolhida (ARMou Intel)
– Emulador ou dispositivo real– Ferramenta deautomação deteste
TESTEPARAANDROID
![Page 55: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/55.jpg)
Abrimos oemulador comocomando android avdEle dá apossibilidade decriar umnovoemulador ou iniciá-lo
ABRINDOOEMULADOR
android avd
![Page 56: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/56.jpg)
INSTALAÇÃODOAPP
DescobrindoonomedodispositivoÉnecessáriosaberonomedodispositivoparainstalaraapp.Ocomandoadb devices exibeonomedodosdispositivosconectadosnasuamáquina(emuladoresoureais)
comando
nomedodispositivo
adb devices
![Page 57: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/57.jpg)
INSTALAÇÃODOAPP
InstalandooappOcomandoadb install nome_app.apk é quem efetua ainstalação daapp.É necessário ou estar nodiretório daappou informar ocaminho
comando
adb install nome_app.apk
adb install C:\apps\nome_app.apk
![Page 58: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/58.jpg)
INSPECIONANDOCOMPONENTES
Há uma ferramenta chamada uiautomatorviewer queinspecionaos componentes eseus atributos deformasemelhante ao Firebug
Parainiciá-loclicamos digitamos oseguinte comando noPromptdeComando
uiautomatorviewer
![Page 59: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/59.jpg)
INSPECIONANDOCOMPONENTES
Botão decapturadatela
Árvore decomponentes
Componenteselecionado
Atributos evalores docomponenteselecionado
![Page 60: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/60.jpg)
AUTOMAÇÃOCOMAPPIUM
Appium éumaferramentaopensource paraautomatizar:– AplicaçõesmobilenativasouhíbridasparaiOS,Android– AplicaçõeswebmobileparaosbrowsersnativosdoiOS,Android ouGoogleChrome
http://appium.io
![Page 61: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/61.jpg)
AUTOMAÇÃOCOMAPPIUM
PassosHáquatropassosbásicosparaacriaçãodescriptsdetesteparamobilecomAppium:
1. InformaraAPPeCriaraDesiredCapability2. Abriraconexãocomodispositivo3. Localizareinteragircomcomponentes4. Validarosresultadosesperados
![Page 62: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/62.jpg)
AUTOMAÇÃOCOMAPPIUM
1.InformaraAPPeCriarDesiredCapabilityElaéresponsávelporinformardadosgeraissobreoquevamostestareonde (capacidades)
AAPPé inseridaatravésdaclasseFile(java.io)
ÉnecessárioinstanciaraclasseDesiredCapabilities()
Depoisénecessárioinformarascapacidades
![Page 63: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/63.jpg)
Passos1. Criarumapastachamaapp naraizdoprojeto2. Copiaroarquivoworkshop.apk paraapastaapp3. Criarumpacotechamadotdc.workshop.mobile napastasrc/test/java4. CriarumaJUnitTestCase chamadaAdicionarPessoaTeste5. AlteraonomedométododetesteparatesteAdiconarPessoa()6. Desenvolveramesmaclassedescritaabaixo
AUTOMAÇÃOMOBILE- EXERCÍCIO1CriaraEstruturaeDesiredCapabilities
![Page 64: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/64.jpg)
AUTOMAÇÃOCOMAPPIUM
2.AbriraConexãocomoDispositivoDepoisqueinformamosascapacidadesprecisamosabriraconexãocomodispositivoparaqueelepossareceberoscomandos.
AprimeiraaçãoéconfiguraroAppium.app paraisso.
![Page 65: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/65.jpg)
Passos1. AbriroAppium.app2. Cliquenobotão AndroidSettings3. Marqueaopção DeviceNameeinsira otexto ”AndroidEmulator4. Cliquenobotão GeneralSettings5. Marqueaopção OverrideExistingSessions6. Cliquenobotão Launch
AUTOMAÇÃOMOBILE- EXERCÍCIO2Configurar oAppium.app
![Page 66: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/66.jpg)
AUTOMAÇÃOCOMAPPIUM
2.AbriraConexãocomoDispositivoAgoraprecisamosadicionarocódigoparaabriraconexãoviaAndroid.
UmlembretequeaURLdeconexão,nonossocaso,élocaleaportaéaconfiguradanoAppium.AindanaURLhásempreocontexto/wd/hub
![Page 67: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/67.jpg)
Passos1. Inserirotrechodecódigoabaixoantesdo”}”2. AofinaldadigitaçãocoloqueomousesobreotrechodotextoULR,aguarde
ummomentoeselecioneAdd throws declaration
AUTOMAÇÃOMOBILE- EXERCÍCIO3Abrir aConexão comoDispositivo
![Page 68: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/68.jpg)
Passos3. Ocódigo finaldeve ficar como oabaixo
AUTOMAÇÃOMOBILE- EXERCÍCIO3Abrir aConexão comoDispositivo
![Page 69: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/69.jpg)
AUTOMAÇÃOCOMAPPIUM
3.LocalizareInteragircomosComponentesComooAppium ébaseadonoSeleniumWebDriver todososcomandosdeinterrogação(localizar)emanipulação(interagir)sãoidênticos.
Masalgumasformasdelocalização são suportadas noAndroid:
![Page 70: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/70.jpg)
Passos1. ComaAPPabertanoemuladorabreouiautomatorviewer2. InspecioneosseguintescamposefaçaainteraçãonecessáriasomenteatravésdeID
1. Cliquenobotão+(adicionar)2. PreenchaocampoNome3. PreenchaocampoEndereço4. PreenchaocampoHobbies5. CliquenobotãoSalvar6. CliquenobotãodePesquisar7. Digiteo”Nome”inseridoepareporaqui:-)
• LembrandoqueoIDétodoovalorcontidonoresource-id
AUTOMAÇÃOMOBILE- EXERCÍCIO4Localizar eInteragir comos Componentes
![Page 71: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/71.jpg)
AUTOMAÇÃOCOMAPPIUM
4.ValidarosResultadosEsperadosTambém é damesma formaqueocorre noSeleniumWebDriverutilizando alguma ferramenta detesteunitário.
Mas,na grande maioria doscasos,utilizaremos somente oassertEquals
![Page 72: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/72.jpg)
Passos1. ComaAPPabertanoemuladorabreouiautomatorviewer2. Inspecioneonomedalistaquefoifiltradopelapesquisa3. AtribuaotextodoelementoaumaString4. ValideoresultadocomoassertEquals
AUTOMAÇÃOMOBILE- EXERCÍCIO5Validar os Resultados Esperados
![Page 73: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/73.jpg)
AUTOMAÇÃOCOMAPPIUM
FinalizaçãoParasaberexatamentequandoaexecuçãoterminou,fecharaapp etambémevitarproblemascomsessãoinserirocomandodriver.quit()paraencerraraexecuçãodotesteeofechandodaapp.
SeaspróximasexecuçõesfalharemlogonoinícioénecessáriopararoAppium.app einicia-lonovamente.
![Page 74: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/74.jpg)
Passos1. Adicionarocódigoabaixoparaafinalizaçãodaapp2. ExecutarotestepeloEclipse3. VisualizarseoresultadodoJUnit apresentasucesso
ResultadoEsperado1. Testefalharpornão conseguir localizar obotão +(Adicionar)
AUTOMAÇÃOMOBILE- EXERCÍCIO6Finalizar oteste
![Page 75: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/75.jpg)
AUTOMAÇÃOCOMAPPIUM
Porqueobotãonãofoilocalizadopeloscript?Sevocêexecutarnovamenteoscriptverásqueosdadosecamposdemoramumpoucoparaseremapresentados.Issosedevearequisiçãoaoservidorparaobterosdados.
Logoprecisamosdeesperarporalgumacoisanatelaparaqueoscriptpossaseguir.
ComooAppium ébaseadonoSeleniumWebDriver asesperassãoasmesmas.
SempreusaremosaesperaatravésdaclassedesuporteExpectedConditions utilizandoométodopresenceOfElementLocated
![Page 76: AB Workshop Automacao REST Web Mobile - schd.wsschd.ws/hosted_files/agilebrazil2016/a1/AB_Workshop_Automacao_REST...... criação relativamente demorada mas muito rápido para executar](https://reader033.fdocumentos.com/reader033/viewer/2022051508/5acc89827f8b9a73128cf4b9/html5/thumbnails/76.jpg)
Passos1. AdicionaaclasseWebDriverWait logoapósoAndroidDriver2. Insiraumaesperaexplícitaparaobotão+(Adicionar)
ResultadoEsperado1. Registroadicionadoetesteexecutadocomsucesso
AUTOMAÇÃOMOBILE- EXERCÍCIO7Inseriraesperapelobotão+(Adicionar)