Como testar
sua aplicação
Android com
Robotium
GDG DevFest Sul – Porto Alegre, 2014
Agenda
•Apresentação
•Conceitos de testes
•Dificuldades de testes
•O que testar numa aplicação Android
•Ferramentas
•White...
Thayse Severiano
Analista de testes na HB.SIS em Blumenau;
GDG Organizer em Blumenau;
Atua a área de testes a 4 anos
+Thay...
Conceitos
Teste de caixa branca (whitebox):
É uma técnica de teste que usa a perspectiva interna
do sistema para modelar o...
Conceitos
Teste funcional
Avaliam o comportamento da aplicação.
Teste de sistema
Execução do sistema sob ponto de vista do...
Conceitos
Teste de aceitação
São testes realizados por um grupo restrito de
usuários finais do sistema, que simulam operaç...
Desafios
• Diferentes versões do Android
• 13 versões do SO (API 8 até a 20);
• Muitas configurações de hardware;
• Altera...
O que testar?
• Compatibilidade
• Instalação
• Funcionalidades
• Performance
• Usabilidade
• Serviços
• Segurança
Ferramentas
MonkeyRunner
Robolectric
Robotium
MonkeyRunner
• Testes escritos em Python
• Permite instalar/desinstalar aplicações
• Executa aplicações
• Obtêm capturas d...
Robolectric
• Objetos sombra
• Permite execução dos testes na JVM
• Sem necessidade de instalação da aplicação
dos testes ...
Robotium
• Testes escritos em Java;
• Usa classe ActivityInstrumentationTestCase do
Android;
• Testes funcionais, de siste...
Robotium
• Integra com Maven e Ant para integração
contínua;
• Similiar ao Selenium;
• Utiliza jUnit 3;
• Root em aplicaçõ...
Instalando Robotium
1. Criar um projeto de testes (baseado no
projeto da aplicação);
2. Copiar no projeto o .Jar do Roboti...
Na classe de testes...
• Estender da classe
ActivityInstrumentationTestCase2;
• Solo: objeto do Robotium de interação
com ...
Let’s get started!!!
•WhiteBox Tests:
Com acesso ao código fonte;
Localiza os componentes pelo ID;
Let’s get started!!!
• Blackbox Tests:
Testes pela posição (não são as
coordenadas, mas sim o index) do
componente na tel...
Aplicações
•WhiteBox Tests:
Com acesso ao código fonte;
Localiza os componentes pelo ID;
Aplicações Hibridas
•Suportadas desde a versão 4.0 do
Robotium;
•É possível interagir com elementos
(através de WebvViews)
Dúvidas??
Obrigada!
Próximos SlideShares
Carregando em…5
×

Como testar sua aplicação Android com Robotium

801 visualizações

Publicada em

Apresentação feita no GDG DevFest Sul, que aconteceu em Porto Alegre, no dia 23/08/2014, no Centro de Eventos Plaza São Rafael.

Publicada em: Tecnologia
0 comentários
3 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
801
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
24
Comentários
0
Gostaram
3
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Como testar sua aplicação Android com Robotium

  1. 1. Como testar sua aplicação Android com Robotium GDG DevFest Sul – Porto Alegre, 2014
  2. 2. Agenda •Apresentação •Conceitos de testes •Dificuldades de testes •O que testar numa aplicação Android •Ferramentas •Whitebox com Robotium
  3. 3. Thayse Severiano Analista de testes na HB.SIS em Blumenau; GDG Organizer em Blumenau; Atua a área de testes a 4 anos +ThayseSeveriano Thayse_ss br.linkedin.com/in/thayseseveriano github.com/thaysetss
  4. 4. Conceitos Teste de caixa branca (whitebox): É uma técnica de teste que usa a perspectiva interna do sistema para modelar os casos de teste (leva em consideração o código fonte para desenhar os testes) Teste de caixa preta (blackbox) Verifica as entradas e saídas, sem levar em conta como o software foi desenvolvido.
  5. 5. Conceitos Teste funcional Avaliam o comportamento da aplicação. Teste de sistema Execução do sistema sob ponto de vista do usuário final, validando as funcionalidades em busca de falhas em relação aos objetivos originais
  6. 6. Conceitos Teste de aceitação São testes realizados por um grupo restrito de usuários finais do sistema, que simulam operações de rotina do sistema para validar os requisitos
  7. 7. Desafios • Diferentes versões do Android • 13 versões do SO (API 8 até a 20); • Muitas configurações de hardware; • Alterações no Android feitas pelos fabricantes;
  8. 8. O que testar? • Compatibilidade • Instalação • Funcionalidades • Performance • Usabilidade • Serviços • Segurança
  9. 9. Ferramentas MonkeyRunner Robolectric Robotium
  10. 10. MonkeyRunner • Testes escritos em Python • Permite instalar/desinstalar aplicações • Executa aplicações • Obtêm capturas de tela • Compara imagens • Usa classe InstrumentationTestRunner do Android • Executa testes em emuladores e dispositivos reais
  11. 11. Robolectric • Objetos sombra • Permite execução dos testes na JVM • Sem necessidade de instalação da aplicação dos testes em dispositivos ou emuladores • Reduz o tempo de execução dos testes
  12. 12. Robotium • Testes escritos em Java; • Usa classe ActivityInstrumentationTestCase do Android; • Testes funcionais, de sistema e aceitação; • Testes BlackBox e WhiteBox; • Suporta diálogos, mensagens, menus e menus de contexto;
  13. 13. Robotium • Integra com Maven e Ant para integração contínua; • Similiar ao Selenium; • Utiliza jUnit 3; • Root em aplicações instaladas
  14. 14. Instalando Robotium 1. Criar um projeto de testes (baseado no projeto da aplicação); 2. Copiar no projeto o .Jar do Robotium; 3. Adicionar o .Jar ao projeto (primeiro da lista e configurar local do Javadoc);
  15. 15. Na classe de testes... • Estender da classe ActivityInstrumentationTestCase2; • Solo: objeto do Robotium de interação com a Activity; • SetUp(): instanciar Solo; • TearDown(): Finalizar as activities iniciadas;
  16. 16. Let’s get started!!! •WhiteBox Tests: Com acesso ao código fonte; Localiza os componentes pelo ID;
  17. 17. Let’s get started!!! • Blackbox Tests: Testes pela posição (não são as coordenadas, mas sim o index) do componente na tela; Necessidade: conhecimento dos componentes; Alto custo de manutenção;
  18. 18. Aplicações •WhiteBox Tests: Com acesso ao código fonte; Localiza os componentes pelo ID;
  19. 19. Aplicações Hibridas •Suportadas desde a versão 4.0 do Robotium; •É possível interagir com elementos (através de WebvViews)
  20. 20. Dúvidas?? Obrigada!

×