Utilizando ferramentas de análise, testes e verificação de bugs no desenvolvimento de aplicativos para android
Upcoming SlideShare
Loading in...5
×
 

Utilizando ferramentas de análise, testes e verificação de bugs no desenvolvimento de aplicativos para android

on

  • 1,305 views

A palestra visa informar aos participantes sobre algumas ferramentas que auxiliam o desenvolvedor de aplicativos no momento de realizar uma análise mais aprofundada sobre quem são os usuários que ...

A palestra visa informar aos participantes sobre algumas ferramentas que auxiliam o desenvolvedor de aplicativos no momento de realizar uma análise mais aprofundada sobre quem são os usuários que utilizam o aplicativo desenvolvido, onde estão, faixa etária, como se comportam na utilização do aplicativo, etc. Visa também mostrar algumas ferramentas utilizadas para execução de testes nos aplicativos como também verificar possíveis problemas(bugs) ocorridos com os aplicativos após o mesmo ser disponibilizado para os usuários.

Statistics

Views

Total Views
1,305
Views on SlideShare
1,305
Embed Views
0

Actions

Likes
1
Downloads
15
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Dados coletados em 02 de abril de 2013
  • Métricas são um conjunto de parâmetros utilizados para mensurar alguma coisa. Quais objetivos com a construção do app?? Vender alguma coisa Retorno com publicidade Que o usuário compre a versão paga Reconhecimento
  • 7 bilhões de pessoas em outubro de 2011 uma em cada sete pessoas no mundo possuindo um smartphone. 13% de todo o tráfego de Internet em 2012 foi originado a partir de dispositivos móveis. 41% das pessoas que fizeram uma compra no Mobile estavam em casa e perto do Notebook. No Brasil são mais de 260 milhões de celulares ativos. 20% da população brasileira possuem um smartphone; A navegação na internet em dispositivos móveis deve superar o uso da internet por meio de computadores comuns até 2014. Apple Store e a Google Play ultrapassaram  25 bilhões de downloads de aplicativos
  • o Executivo que passou 1 ano trabalhando com smartphone; fundador da empresa de consultoria em software Palador;
  • investigar como os usuários interagem com seu aplicativo; Como os usuário atuam dentro do aplicativo, que telas são mais visualizadas, quais botões são mais clicados; descobrir o máximo possível sobre os seus clientes o mais rapidamente possível; freqüencia com que seus clientes estão realizando alguma ação, como fazer uma compra app-in; partir de que horas o usuário acessa a aplicação? idade do usuário; sexo do usuário;
  • Nasceu da necessidade de analisar o trafico dentro de uma web site;
  • Gratuito; 275 mil aplicações; SDK deles acaba sendo grande demais para simplesmente fazer tracking;
  • iOS, Android, Windows Phone, HTML5, BlackBerry e JavaME;
  • Flurry Usage LifeCycle Top Versions Audience Interests : My Apps Age Gender Technical Todas
  • Em 1983, um bug no software de alerta anti-misseis Soviético, quase deu início a III Guerra Mundial; 5 mísseis Americanos contra URSS; O coronel considerou que a informação estava incorreta e não ordenou o contra-ataque;
  •   API de testes é uma extensão do famoso  framework  de testes unitários JUnit, com classes de teste específicas para os componentes do Android. Activities  - Uma activity é um dos componentes do Android mais usados nas aplicações pois ele é que  fornece uma tela com a qual os usuários podem interagir. Ex .: tela de login Services  – São componentes de aplicação que podem executar operações de longa duração em segundo plano, portanto não fornecem uma interface de usuário. Ex.: aplicativo de player de música, ou streaming de rádio Content Providers  – Como o nome já explica, Content Providers é componente responsável por armazenar e recuperar os dados e torna-los acessível para todas as aplicações, ou seja são os provedores de conteúdo. A única forma de compartilhar dados entre aplicações no Android é através de content providers, pois não existe área de armazenamento comum que todos os pacotes Android podem acessar. Ex.: acessar os contatos da agenda do smartPhone Broadcast Receivers  – É um componente que responde a anúncios de todo o sistema de broadcast. Muitos brodcast provenientes do sistema, como um broadcast anunciando que a bateria está fraca ou uma sms foi recebida. As aplicações também podem iniciar os broadcast, por exemplo, para permitir que outras aplicações saibam que alguns dados foram disponibilizados para eles usarem. Os broadcast receivers também não possuem interface de usuário, mas eles podem criar uma notificação de barra de status para alertar o usuário quando um evento de broadcast ocorreu. Ex.: quando um sms chegar a aplicação deve ser inicializada
  • Roboelectric permitem que você teste-drive o desenvolvimento de seu aplicativo Android dentro da JVM em sua estação de trabalho em segundos, em vez de no emulador no em um dispositivo (que pode ser lento). interceptar o carregamento das classes Android e reescrever os corpos de método. 1,047  testes  em 28  segundos
  • Roboelectric permitem que você teste-drive o desenvolvimento de seu aplicativo Android dentro da JVM em sua estação de trabalho em segundos, em vez de no emulador no em um dispositivo (que pode ser lento). interceptar o carregamento das classes Android e reescrever os corpos de método.
  • Uma ferramenta  open-source  de automação para testes em diversas plataformas : Nativos : iOS, Android – Hibridos; Web: HTML5, FLEX; Emuladores( Simuladores ) e em dispositivos reais( sem jailbreak ou root ); Funciona com todos os principais navegadores de desktop; Identifica botões, campos de texto, etc, e realiza a inserção de dados;
  • Testes de stress no aplicativo Roda no emulador ou em dispositivos reais; -p indica o package que será realizado o teste, se houver mais de um package repete a sentença Throttle: insere um atraso entre os eventos; S : valor pseudo-randomico gerador de números; -v quantidade de vezes que será realizado o teste
  • Empresa chinesa Animoca possui 400 dispositivos para realizar testes dos aplicativos.
  • Relatar ao desenvolvedor; Passar todas a informações na hora que ocorreu o erro; 13% dos usuários mobile afirmam que nunca usam um aplicativo novamente se a primeira experiência for ruim.
  • Plataformas: Android, IOS, Windows Phone, HTML5; quais versões do sistema operacional estão lhe causando mais dores de cabeça!

Utilizando ferramentas de análise, testes e verificação de bugs no desenvolvimento de aplicativos para android Utilizando ferramentas de análise, testes e verificação de bugs no desenvolvimento de aplicativos para android Presentation Transcript

  • Douglas Leandro KleinkaufAndroid Developerdkleinkauf@gmail.com@dkleinkaufUtilizando Ferramentas deAnálise, Testes e Verificação deBugs no desenvolvimento deAplicativos para Android
  • Evolução SmatphonesApresentação > Evolução dosSmartphones
  • Agenda• Introdução• Ferramentas de Análise– Google Analytics– Flurry• Ferramentas de Testes– Junit– Robolectric– Monkey Talk– UI/Application Exerciser Monkey• Testes Online• Relatórios de Erros– Crittercism– BugSense• Bônus
  • É só um aplicativosinho!!Introdução > Aplicativosinho• Armazenamento de Dados• Análise de Requisitos• Testes• Arquitetura Cliente-Servidor• UI – User Interface• UX – User Experience ( Usabilidade )• Segurança• Orientação a Objetos• WebService• Estratégias de Produto• Atualizar constantemente
  • É só um aplicativosinho!!Introdução > Aplicativosinho
  • Estatísticas OSFonte: IDCIntrodução > Estatísticas
  • Estatísticas AndroidIntrodução > Estatísticas
  • Métricas• Objetivos;• ROI ( Return on Investment );“O que não é medido não pode ser gerenciado.”• Identificar novas estratégias;Introdução > Métricas
  • Mobile-first / Mobile-onlyIntrodução > Mobile-firts / Mobile-Only
  • Benjamin Robbinsremotelymobileblog.com/Introdução > Benjamin Robbins
  • Ferramentas de AnáliseFerramentas de Análise >
  • Ferramentas de Análise> GoogleAnalytics
  • Ferramentas de Análise> GoogleAnalytics• Download do SDK;• Adicione o libGoogleAnalyticsV2.jar ao seuclasspath;Configurando GA
  • Ferramentas de Análise > Flurry
  • Ferramentas de Análise > Flurry
  • PlataformasFerramentas de Análise > Flurry
  • Configurando o Flurry• download do SDK;• Adicione o FlurryAgent.jar ao seuclasspath;• Configurar você AndroidManifest.xmlpara ter acesso à Internet e,opcionalmente, localização;• Inserir linhas de código;Ferramentas de Análise > Flurry
  • Utilizando o Flurry (events)Ferramentas de Análise > Flurry
  • Desenvolvimento de TestesDesenvolvimento de Testes“Se um software não tem erros,então o teste está ruim”.
  • Metodologias de Testes >Importância dos TestesCoronel Stanislav PetrovImportância dos Testes
  • Ferramentas de TestesFerramentas de Testes >
  • JunitFerramentas de Testes > Junit
  • JunitFerramentas de Testes > Junit• Activities;• Services;• Content Providers;• Broadcast Receivers;AndroidInstrumentationTestCase2ServicesTestCaseProviderTestCase2AndroidTestCase
  • RobolectricFerramentas de Testes >Robolectric
  • RobolectricFerramentas de Testes >Robolectric• Outros testes podem ser muito lentos;• Ocorre dentro da JVM;• 1,047 testes em 28 segundos;
  • Monkey TalkFerramentas de Testes > MonkeyTalk
  • Monkey TalkFerramentas de Testes > MonkeyTalk• Download IDE e do plugin (eclipse*);
  • Monkey TalkFerramentas de Testes > MonkeyTalk• Adiciona monkeytalk-agent.jar;
  • Monkey TalkFerramentas de Testes > MonkeyTalk
  • UI/Application Exerciser MonkeyAdb shell monkey -p br.com.seu_package--throttle 400 -s 43686-v 1000Ferramentas de Testes > UIApplication Exerciser Monkey
  • UI/Application Exerciser MonkeyFerramentas de Testes > UIApplication Exerciser Monkey
  • Testes OnlineTestes Online
  • Testes OnlineTestes Online > Características Testes em devices reais; Agilidade e eficiência na identificação de erros; Resposta rápida ao lançamento de novos ambientes e devices; Verificar e analisar imagens de CPU, memória e uso, exceções elogcats;Vídeo
  • Testes Online http://www.perfectomobile.com/ http://www.devicelab.com.br/ http://jamosolutions.com/ http://www.bsquare.com/ http://testdroid.com/Testes Online > Sites
  • Relatório de Erros (Crash Report)Relatórios de Erros
  • CrittercismRelatórios de Erros > Crittercism
  • CrittercismRelatórios de Erros > Crittercism
  • BugsenseRelatórios de Erros > Bugsense
  • Configurando BugsenseRelatórios de Erros > Bugsense
  • BônusBônus
  • Administrando Banco de DadosBônus > Administrando Banco deDados
  • Estrutura de ClassesBônus > Estrutura de Classes
  • PushLinkBônus > PushLink
  • PushLinkBônus > PushLink
  • NearbytesBônus > Nearbytes
  • Obrigado !!“Aonde quer que você vá, você estará lá!!”Autor desconhecido