SlideShare uma empresa Scribd logo
AUTOMAÇÃOMOBILE
COMEXPO
EREACT-NATIVE
Compartilhando dificuldades técnicas e como as contornei ao
implantar automação numa empresa waterfall
onde os testes são totalmente manuais.
RodrigoMatola
RODRIGOMATOLA
QA
Automatizador
Agilista
BacharelemMeteorologia
ExprofessordeFísicaeMatemática
Fotógrafopordiversão
Cerveja
LINKTR.EE/RODRIGOMATOLA
Foto do crachá
HARDSKILLS
ISSUES
Precisamosimplantarautomaçãoe
processosdequalidade
noaplicativodeumaempresade
pedágioeletrônico.
Chegandolá...
estápara
assimcomo
VantagensdoExpo
JS
DesvantagensdoExpo
Então,
vamoscomeçara
automação!?
arctomlandroid.txt
}
TextViews...
Cadêosids???
id
accessibilityLabel
xpathou
accessibilityLabel
expobuild
accessibilityLabel
xpath//*[@text=""]
xpath
/hierarchy/android.widget.FrameLayout/android.widget.LinearLa
yout/android.widget.FrameLayout/android.widget.FrameLayout/
android.widget.FrameLayout/android.widget.FrameLayout/andro
id.view.ViewGroup/android.support.v4.widget.i/android.view.Vie
wGroup/android.view.ViewGroup/android.view.ViewGroup/androi
d.view.ViewGroup[2]/android.widget.TextView[2]
Pqp!
Comovoufazer?
Opção1
Appium::TouchAction.new.tap
(x:x,y:y,count:1).release.perform
Opção1(problema)
diferentesposiçõesparadiferentesresoluções
implementaçãocomplicadaparatodoselementos
senãoachouacima,comovaiacharaqui?
Opção2
defmapear_tela
find_elements(:class,'android.widget.TextView')
end
defmapear_dados_tela
find_elements(:class,'android.widget.EditText')
end
Opção2
campos=mapear_dados_tela
campos[0]=>"CódigodoCliente"
campos[1]=>"CPF"
campos[2]=>"Nome"
campos[3]=>"E-mail*"
...
Opção2(problema)
campos[7]=>"CEP*"
campos[7].send_keys
>elementnotfound
Opção2(problema)
scrollup
campos[3]=>"CEP*"
(masnãoerao[7]?)
Opção2(solução?)
Todososelementosnatela
Semnecessidadedescroll
Tablet10"
Opção2:screenobject
INDICES_MEUS_DADOS={
'códigocliente'=>0,
'cpf'=>1,
'nome'=>2,
'email'=>3
...
}
Opção2:screenobject
defpreencher_nome
elementos=mapear_tela
campo_nome=
elementos[INDICES_DADOS_PESSOAIS['nome']]
campo_nome.send_keys(CLIENTES['tipo']['nome'])
end
Opção2:bagunça...
IDs_LOGIN={
'campocpf'=>'digiteseucpf',
'continuar'=>'//*[@text="Continuar"]',
'camposenha'=>'camposenha',
'visualizarsenha'=>'Visualizarsenha',
'esqueciasenha'=>'//*[@text="Esqueciminhasenha"]',
'manterconectado'=>'Mantenha-meconectado',
'entrar'=>'//*[@text="Entrar"]',
'logincomfacebook'=>-2,
'logincomgoogle'=>-1
}
Freezing
NovaArquitetura
Organização
IDs_LOGIN={
'campocpf'=>'digiteseucpf',
'continuar'=>'//*[@text="Continuar"]',
'logincomgoogle'=>-1
}
find_element(:accessibility_id,IDs_LOGIN['campocpf']).send_keys
find_element(:xpath,IDs_LOGIN['continuar']).click
login[IDs_LOGIN['logincomgoogle']].click
SOFTSKILLS
ISSUES
Façamanual
Testesrasos
Testesrasos
Atendimentoaocliente
PERGUNTAS?
Contatos
LINKTR.EE/RODRIGOMATOLA
LINKTR.EE/RODMATOLA

Mais conteúdo relacionado

Semelhante a Automação Mobile com Expo e React-Native

TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...
TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...
TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...
Eduardo Alcântara F. da Silva
 
Divida tecnica
Divida tecnicaDivida tecnica
Divida tecnica
alexandre freire
 
Robôs Colaborativos
Robôs ColaborativosRobôs Colaborativos
Robôs Colaborativos
Ricardo Lima
 
Mes simpesc
Mes simpescMes simpesc
Mes simpesc
Jaison Carvalho
 
Trabalho sobre software Vericut
Trabalho sobre software VericutTrabalho sobre software Vericut
Trabalho sobre software Vericut
rbgalvao
 
Unirb
UnirbUnirb
Ux for Developers - Build Better Products
Ux for Developers - Build Better ProductsUx for Developers - Build Better Products
Ux for Developers - Build Better Products
Pedro Marques
 
Realidade Aumentada
Realidade AumentadaRealidade Aumentada
Realidade Aumentada
Campus Party Brasil
 
RodoCap no JustJava 2008
RodoCap no JustJava 2008RodoCap no JustJava 2008
RodoCap no JustJava 2008
Marcos aurélio Pereira
 
Encet 2008-ajax java
Encet 2008-ajax javaEncet 2008-ajax java
Encet 2008-ajax java
Fábio José Moraes
 
Agile com Demoiselle - FISL 11
Agile com Demoiselle - FISL 11Agile com Demoiselle - FISL 11
Agile com Demoiselle - FISL 11
Emerson Saito
 
Wicket 2008
Wicket 2008Wicket 2008
Wicket 2008
Claudio Miranda
 
RIA - Conhecendo o Adobe Flex 2
RIA - Conhecendo o Adobe Flex 2RIA - Conhecendo o Adobe Flex 2
RIA - Conhecendo o Adobe Flex 2
elliando dias
 
Levando seu SCM à outro nível com Feature Flags
Levando seu SCM à outro nível com Feature FlagsLevando seu SCM à outro nível com Feature Flags
Levando seu SCM à outro nível com Feature Flags
André Paulovich
 
Master class: Protocol Interoperability
Master class: Protocol InteroperabilityMaster class: Protocol Interoperability
Master class: Protocol Interoperability
Julien Kerihuel
 
Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011
José Carlos Carlos
 
QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...
QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...
QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...
Gleicon Moraes
 
Arquitetura de aplicações Web 2.0 em Java
Arquitetura de aplicações Web 2.0 em JavaArquitetura de aplicações Web 2.0 em Java
Arquitetura de aplicações Web 2.0 em Java
Breno Vitorino
 
Programação Robótica com RobotExpert
Programação Robótica com RobotExpertProgramação Robótica com RobotExpert
Programação Robótica com RobotExpert
PLMX -Soluções para Negocios
 
Java e orientação a objetos
Java e orientação a objetosJava e orientação a objetos
Java e orientação a objetos
Frederico Maia Arantes
 

Semelhante a Automação Mobile com Expo e React-Native (20)

TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...
TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...
TCC: IMPLANTAÇÃO DE ROBÔ MANIPULADOR PARA MÁQUINA DE INJEÇÃO PLÁSTICA EM UMA ...
 
Divida tecnica
Divida tecnicaDivida tecnica
Divida tecnica
 
Robôs Colaborativos
Robôs ColaborativosRobôs Colaborativos
Robôs Colaborativos
 
Mes simpesc
Mes simpescMes simpesc
Mes simpesc
 
Trabalho sobre software Vericut
Trabalho sobre software VericutTrabalho sobre software Vericut
Trabalho sobre software Vericut
 
Unirb
UnirbUnirb
Unirb
 
Ux for Developers - Build Better Products
Ux for Developers - Build Better ProductsUx for Developers - Build Better Products
Ux for Developers - Build Better Products
 
Realidade Aumentada
Realidade AumentadaRealidade Aumentada
Realidade Aumentada
 
RodoCap no JustJava 2008
RodoCap no JustJava 2008RodoCap no JustJava 2008
RodoCap no JustJava 2008
 
Encet 2008-ajax java
Encet 2008-ajax javaEncet 2008-ajax java
Encet 2008-ajax java
 
Agile com Demoiselle - FISL 11
Agile com Demoiselle - FISL 11Agile com Demoiselle - FISL 11
Agile com Demoiselle - FISL 11
 
Wicket 2008
Wicket 2008Wicket 2008
Wicket 2008
 
RIA - Conhecendo o Adobe Flex 2
RIA - Conhecendo o Adobe Flex 2RIA - Conhecendo o Adobe Flex 2
RIA - Conhecendo o Adobe Flex 2
 
Levando seu SCM à outro nível com Feature Flags
Levando seu SCM à outro nível com Feature FlagsLevando seu SCM à outro nível com Feature Flags
Levando seu SCM à outro nível com Feature Flags
 
Master class: Protocol Interoperability
Master class: Protocol InteroperabilityMaster class: Protocol Interoperability
Master class: Protocol Interoperability
 
Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011Automação industrial1 parte1 23_2_2011
Automação industrial1 parte1 23_2_2011
 
QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...
QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...
QCon SP 2015 - Advogados do diabo: como a arquitetura emergente de sua aplica...
 
Arquitetura de aplicações Web 2.0 em Java
Arquitetura de aplicações Web 2.0 em JavaArquitetura de aplicações Web 2.0 em Java
Arquitetura de aplicações Web 2.0 em Java
 
Programação Robótica com RobotExpert
Programação Robótica com RobotExpertProgramação Robótica com RobotExpert
Programação Robótica com RobotExpert
 
Java e orientação a objetos
Java e orientação a objetosJava e orientação a objetos
Java e orientação a objetos
 

Último

DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 

Último (8)

DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 

Automação Mobile com Expo e React-Native