Como testar sua aplicação Android com Robotium

20
Como testar sua aplicação Android com Robotium GDG DevFest Sul – Porto Alegre, 2014

description

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.

Transcript of Como testar sua aplicação Android com Robotium

Page 1: Como testar sua aplicação Android com Robotium

Como testar sua aplicação Android com Robotium

GDG DevFest Sul – Porto Alegre, 2014

Page 2: Como testar sua aplicação Android com Robotium

Agenda

•Apresentação

•Conceitos de testes

•Dificuldades de testes

•O que testar numa aplicação Android

•Ferramentas

•Whitebox com Robotium

Page 3: Como testar sua aplicação Android com Robotium

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

Page 4: Como testar sua aplicação Android com Robotium

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.

Page 5: Como testar sua aplicação Android com Robotium

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

Page 6: Como testar sua aplicação Android com Robotium

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

Page 7: Como testar sua aplicação Android com Robotium

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;

Page 8: Como testar sua aplicação Android com Robotium

O que testar?• Compatibilidade

• Instalação

• Funcionalidades

• Performance

• Usabilidade

• Serviços

• Segurança

Page 9: Como testar sua aplicação Android com Robotium

Ferramentas

MonkeyRunner

Robolectric

Robotium

Page 10: Como testar sua aplicação Android com Robotium

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

Page 11: Como testar sua aplicação Android com Robotium

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

Page 12: Como testar sua aplicação Android com Robotium

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;

Page 13: Como testar sua aplicação Android com Robotium

Robotium

• Integra com Maven e Ant para integração contínua;

• Similiar ao Selenium;

• Utiliza jUnit 3;

• Root em aplicações instaladas

Page 14: Como testar sua aplicação Android com Robotium

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);

Page 15: Como testar sua aplicação Android com Robotium

Na classe de testes...

• Estender da classe ActivityInstrumentationTestCase2;

• Solo: objeto do Robotium de interação com a Activity;

• SetUp(): instanciar Solo;

• TearDown(): Finalizar as activitiesiniciadas;

Page 16: Como testar sua aplicação Android com Robotium

Let’s get started!!!

•WhiteBox Tests:Com acesso ao código fonte;Localiza os componentes pelo ID;

Page 17: Como testar sua aplicação Android com Robotium

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;

Page 18: Como testar sua aplicação Android com Robotium

Aplicações

•WhiteBox Tests:Com acesso ao código fonte;Localiza os componentes pelo ID;

Page 19: Como testar sua aplicação Android com Robotium

Aplicações Hibridas

•Suportadas desde a versão 4.0 do Robotium;

•É possível interagir com elementos (através de WebvViews)

Page 20: Como testar sua aplicação Android com Robotium

Dúvidas??

Obrigada!