25
MOTOROLA and the Stylized M Logo are trademarks or registered trademarks of Motorola Trademark Holdings, LLC. All other trademarks are the property of their respective owners. © 2011 Motorola Mobility, Inc. All rights reserved. MOTODEV App Summit 2011 Como integrar qualidade aos seus aplicativos através de testes Julia Perdigueiro Engenheira de Software MOTODEV Studio for Android Brasil - #appsum11br

Como integrar qualidade aos seus aplicativos através de testes

Embed Size (px)

Citation preview

Page 1: Como integrar qualidade aos seus aplicativos através de testes

MOTOROLA and the Stylized M Logo are trademarks or registered trademarks of Motorola Trademark Holdings, LLC. All other trademarks are the property of their respective owners. © 2011 Motorola Mobility, Inc. All rights reserved.

MOTODEV App Summit 2011

Como integrar qualidade aosseus aplicativos através de testes

Julia PerdigueiroEngenheira de Software

MOTODEV Studio for Android

Brasil - #appsum11br

Page 2: Como integrar qualidade aos seus aplicativos através de testes

2PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• Recursos oferecidos pelo Android– JUnit, ferramentas do SDK

• Recursos oferecidos pelo MOTODEV– Ferramentas adicionadas/integradas ao MOTODEV Studio for Android

• Analisador de Memória (Memory Analyzer)• App Validator• Gerenciador de Dispositivos (Device Manager) e emulador• Integração com Monkey• Localização de aplicativos e do MOTODEV Studio• Integração de desenvolvimento de aplicações nativas• Integração de banco de dados

– DeviceAnywhere VDL– Parceiros de testes– Novo programa de otimização

Agenda

Page 3: Como integrar qualidade aos seus aplicativos através de testes

3PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• O Android fornece um modelo de testes baseado em JUnit– http://bit.ly/ekNoIr

• Com as APIs JUnit, os desenvolvedores podem acessar objetos, enviar eventospara objetos, consultar as propriedades dos objetos e levantar exceções

• Criar objetos mock para que os testes ocorram em um ambiente controlado

• Plugins ADT Eclipse criam projetos de testes equivalentes

• Os resultados aparecem na view JUnit ou via STDOUT

• A maioria dos projetos de exemplo do SDK contam com um projeto de testerelacionado

• Diversos projetos de tutoriais no site Android developer– Hello http://bit.ly/ePrZQ5– Activity http://bit.ly/hMvMpi

Testes de aplicativos Android com JUnit

Page 4: Como integrar qualidade aos seus aplicativos através de testes

4PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• Emulador – A ferramenta de emulação de dispositivo Android paraprojetar, corrigir e testar aplicativos Android.

• LogCat – uma ferramenta para coletar e exibir logs de debug do sistema

• DDMS – Uma ferramenta completa de debug de aplicativos Android

• TraceView – Um visualizador gráfico dos logs de execução do aplicativo

• Hierarchy Viewer – Ferramenta para debug e otimizar a interface do usuário

• Monkey – Uma ferramenta para gerar fluxos pseudo aleatórios de eventos de usuários para testes de estresse do aplicativo

Assegurar a qualidade dos aplicativos com ferramentasSDK

Page 5: Como integrar qualidade aos seus aplicativos através de testes

5PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• API StrictMode

– Lançada com API nível 10 em dezembro de 2010 (Gingerbread)

– Captura acessos ao disco e à rede em threads de UI

– Post no blog Android.com http://bit.ly/gH0l3x

– Referência da API http://bit.ly/hDs4rz

• MonkeyRunner

– Um framework de execução de testes em formato de scripts, semelhante aoJUnit que usa a sintaxe Jython

– Não confundir com o "Monkey", que usa eventos pseudo aleatórios

– Documentação da ferramenta http://bit.ly/eMFaT9

Assegurar a qualidade dos aplicativos com ferramentasSDK

Page 6: Como integrar qualidade aos seus aplicativos através de testes

6PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

MOTODEV Studio for Android

• Um pacote completo de ferramentas de desenvolvimento, com diversos modos de instalação (instalador completo ou plugins)

• Desenvolvido com base na versão mais recente da IDE Eclipse

• 100% compatível com projetos Eclipse e Google ADT

• Projetado para funcionar com todos os produtos Android

• Download gratuito para membros registrados do MOTODEV

• Suporte nos fóruns de discussão MOTODEV

• Atualmente disponível para Windows, Mac OS e Linux

Page 7: Como integrar qualidade aos seus aplicativos através de testes

7PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Recursos para testes do MOTODEV Studio

• Analisador de Memória (Memory Analyzer)– Adaptado do projeto Eclipse MAT, projetado para lidar com gigabytes de dados de log– Melhorias no fluxo de trabalho que permitem aos desenvolvedores Android percorrer

os relatórios e rapidamente encontrar as áreas com problemas em seus aplicativos

• MOTODEV App Validator– Exclusivamente para usuários MOTODEV, essa ferramenta examina os aplicativos

Android usando diversos critérios para detectar e reportar problemas– Integrada ao MOTODEV Studio, pode ser integrada a sistemas de build/testes em

linha de comando– Também disponível como aplicativo web

• Gerenciador de Dispositivos e Emulator Integrado– Fácil acesso aos testes do Monkey e ao Analisador de Memória (MAT)– Teste de imagens de emulador específicas de um dispositivo (complementos de SDK

– “add-ons”)

Page 8: Como integrar qualidade aos seus aplicativos através de testes

8PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Analisador de Memória (MAT)

Page 9: Como integrar qualidade aos seus aplicativos através de testes

9PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Analisador de Memória (MAT)

Page 10: Como integrar qualidade aos seus aplicativos através de testes

10PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

MOTODEV App Validator

Page 11: Como integrar qualidade aos seus aplicativos através de testes

11PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

http://moto.ly/appvalidator

Versão para a web do App Validator

Page 12: Como integrar qualidade aos seus aplicativos através de testes

12PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Complementos de SDK da Motorola (“Add-ons”)

• http://developer.motorola.com/docstools/tools/

• Emulador de aparelhos vs. complementos apenas skin

Page 13: Como integrar qualidade aos seus aplicativos através de testes

13PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Complementos de SDK no MOTODEV Studio

Page 14: Como integrar qualidade aos seus aplicativos através de testes

14PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• O Monkey testa aplicativos enviando uma sequência de eventos pseudo aleatórios

• O resultado vai para o console adb

• Recrie a sequencia de eventos fornecendo o mesmo valor "seed" para iniciar

• Capacidade de ativar outras ferramentas de correção/diagnósticos, como HPROF

• Executa pela linha de comando ou no modo de gerenciamento de dispositivos dentro do MOTODEV Studio

adb shell monkey -p com.app.foo -v 50 -s 867

Monkey Business

Page 15: Como integrar qualidade aos seus aplicativos através de testes

15PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• Com o editor de arquivos de localização do MOTODEV Studio, osdesenvolvedores podem visualizar todos os idiomas simultaneamente

• Contribuição da Motorola ao projeto Eclipse Sequoyah

• Editor visual e XML são exibições separadas do mesmo modelo de dados, permitindo aos desenvolvedores trabalhar como se sentiremmais confortáveis

• Trabalha com strings e arrays de strings

• Tradução automática com o mecanismo Google Translate

• Demonstração (vídeo)

Localização de aplicativos Android

Page 16: Como integrar qualidade aos seus aplicativos através de testes

16PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Ferramentas para testes de aplicativos traduzidos

• Tela de preferência de idioma vs. widget na Home Screen

• Opção de idioma no gerenciador de dispositivos do MOTODEV Studio

• Aplicativo Custom Locale nas builds de emulador daplataforma Google

• MoreLocale2 (aplicação no

Android Market)

Page 17: Como integrar qualidade aos seus aplicativos através de testes

17PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• http://bit.ly/gpJzrV

MOTODEV Studio (A Tu Manera, Do Seu Jeito, 㣴 )

Page 18: Como integrar qualidade aos seus aplicativos através de testes

18PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• O suporte oficial para aplicativos "nativos" no Android estáevoluindo

• O desenvolvimento de aplicativos vinculados a bibliotecasnativas no Eclipse é possível pelo projeto Sequoyah

• Referências– Google group Android-ndk http://bit.ly/e6m0Jk– Guia de debug Eclipse Sequoyah http://bit.ly/gsvIt9

Desenvolvimento de aplicativos de qualidade com C/C++

Page 19: Como integrar qualidade aos seus aplicativos através de testes

19PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Suporte nativo no MOTODEV Studio

Page 20: Como integrar qualidade aos seus aplicativos através de testes

20PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Testando bancos de dados com o MOTODEV Studio

Page 21: Como integrar qualidade aos seus aplicativos através de testes

21PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

Enviando um banco de dados com seu aplicativo

Page 22: Como integrar qualidade aos seus aplicativos através de testes

22PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• Teste seu aplicativo em aparelhos celulares reais, em redes de operadoras, em tempo real e no mundo todo

• Interaja com a tela sensível ao toque, teclado e controles de hardware

• Observe o que está acontecendo no dispositivo em tempo real

• Facilidades disponíveis também para testes automatizados

• Membros MOTODEV na América Latina são elegíveis para 10 horasgratuitas ao contratarem o serviço

• Uma variedade de dispositivos está disponível em operadoras regionais

DeviceAnywhere Virtual Developer Lab

Page 23: Como integrar qualidade aos seus aplicativos através de testes

23PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

• Mob4Hire– http://www.mob4hire.com/– Testes de aplicativos em diferentes estágios do ciclo de vida– O Mob4Hire usa crowdsourcing para testar seu projeto ao redor do

globo em hardware real e nas operadoras que você especificar

• Intertek / NSTL– Suítes de testes pré-projetadas para aplicativos móveis– Os resultados são normalmente enviados dentro de 24 horas

após o envio– Uma grande variedade de dispositivos móveis em operadoras

de rede regionais– Planos de tarifas especiais para membros MOTODEV

Parceiros de testes MOTODEV

Page 24: Como integrar qualidade aos seus aplicativos através de testes

24PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

APRESENTANDO UM NOVO PROGRAMA DE OTIMIZAÇÃO

Page 25: Como integrar qualidade aos seus aplicativos através de testes

25PáginaMOTODEV App Summit

© 2011 Motorola Mobility, Inc.

PROGRAMA “MOTODEV APPLICATION TESTING ”

• Identifica aplicativos compatíveis e otimizados para dispositivos Motorola, com foco inicial em aplicativos para tablets

• Os desenvolvedores cujos aplicativos sejam considerados "Prontospara o MOTOROLA XOOM" podem participar de um grupo global crescente de canais de descoberta e distribuição de aplicativos.