Robotium e Sikuli –Testes Automatizados
Configuração e execução dos scripts
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL
1
Objetivo
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 2
• Utilizar as ferramentas Robotium e Sikuli para automatizar os testes para dispositivos móveis
e/ou auxiliar os testes manuais, gerando massa de dados.
• Configurar o ambiente de testes para ambas ferramentas.
• Obs.: é recomendado que se utilize uma máquina com Windows 64bits e dedicada para os
testes automatizados.
Robotium
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL
3
O que é o Robotium?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 4
• Uma ferramenta de teste open source para dispositivos Android utilizada para White e Black
Box Testing, focando mais o Black Box Testing.
• Realiza testes unitários.
• Testes podem ser executados em dispositivos reais ou AVD sendo desenvolvidos em Java com
suporte ao Junit 3.
O que é preciso para utilizar o Robotium?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 5
• SDK (Android Standard Development Kit).
• Java SE Development Kit.
• Um dispositivo real (Android) ou um AVD.
• Robotium (robotium-solo-X.X.jar)
* Para facilitar o uso do Robotium, obter o Javadoc dele.
Como configurar o ambiente de testes, utilizando a plataforma
Windows?
Dica: Manter todos os arquivos na unidade C.
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 6
1. Instalar o JDK e o SDK e reiniciar a máquina.
2. Criar uma variável do sistema nova para o SDK.
Computador > Propriedades do Computador > Configurações avançadas do sistema > Variáveis de Ambiente
> Novo
• Nome da variável: Android_SDK
• Valor da variável: É o caminho da SDK (Exemplo: C:android-sdk-windows)
3. Adicionar o caminho das pastas platform-tools e tools na variável do sistema Path.
Computador > Propriedades do Computador > Configurações avançadas do sistema > Variáveis de Ambiente
• Procurar pela variável do sistema Path.
• Clicar em Editar e adicionar o caminho das pastas platform-tools e tools.
• Obs.: Deve ser adicionado ‘;’ entre dois caminhos.
• Exemplo:
(...);C:Program FilesJavajdk1.7.0_25bin;C:android-sdk-windowsplatform-tools;C:android-sdk-
windowstools
Após ter feito este processo, reiniciar a máquina.
Como configurar o ADT no Eclipse IDE?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 7
1. Abrir o ADT localizado no mesmo diretório do SDK (geralmente seu ícone é igual ao do eclipse).
2. Com o ADT aberto, ir em: Window > Preferences > Android
3. Verificar se o caminho da SDK está correto.
4. Clicar em OK.
Testes de Caixa Branca (White Box Test) – O que é?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 8
1. Teste Estrutural.
2. É a investigação detalhada da estrutura lógica interna do código.
3. Inserir as entradas e validar o caminho e transformações destas em saídas esperadas.
Testes de Caixa Branca (White Box Test) – Configuração
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 9
É preciso ter o projeto do aplicativo com o código fonte deste.
1. Botão direito em cima do projeto com o código fonte > Android Tools > New Test Project
2. Inserir o nome do projeto de teste e clicar em Next > Selecionar o projeto (que contém o código fonte do
aplicativo) como o test target > Clicar em Finish
3. Botão direito em cima do projeto de teste > Build Path > Configure Build Path > Selecionar a aba Libraries
4. Clicar em Add External JAR’s > Selecionar o jar do Robotium (robotium-solo-X.X.jar)
5. Clicar na seta ao lado de robotium-solo-X.X.jar, para abrir as opções deste.
6. Clique duplo em Javadoc location > Selecionar a opção Javadoc in archieve > Clicar em Browse (lado
direito de Archieve path) > Selecionar o Javadoc robotium-solo-X.X-javadoc.jar > Clicar em OK
Testes de Caixa Branca (White Box Test) – Estrutura
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 10
package br.cits.componentes.test;
import com.robotium.solo.Solo;
import br.cits.componentes.MainActivity;
import android.test.ActivityInstrumentationTestCase2;
import junit.framework.TestCase;
public class CheckBox2 extends ActivityInstrumentationTestCase2<MainActivity> {
private Solo rob = null;
public CheckBox2(){
super(MainActivity.class);
}
protected void setUp() throws Exception {
super.setUp();
rob = new Solo(getInstrumentation(), getActivity());
rob.clickOnButton("Check Box");
}
protected void tearDown() throws Exception {
rob.finishOpenedActivities();
super.tearDown();
}
}
Testes de Caixa Branca (White Box Test) – O que é?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 11
1. Teste Funcional.
2. É a técnica de testar sem ter conhecimento da estrutura lógica interna do código.
3. O tester não tem acesso ao código e geralmente interage com a UI do aplicativo, providenciando entradas e
examinando as saídas sem saber como e aonde as entradas são processadas.
Testes de Caixa Branca (White Box Test) – Configuração
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 12
É preciso ter o APK assinado para testes. Como assinar um APK?
No ADT, segue os passos abaixo:
1. File > New > Other > Android Test Project
2. Inserir o nome do projeto de teste e clicar em Next > Selecionar a opção This project > Clicar em Finish
3. Botão direito em cima do projeto de teste > Build Path > Configure Build Path > Selecionar a aba Libraries
4. Clicar em Add External JAR’s > Selecionar o jar do Robotium (robotium-solo-X.X.jar)
5. Clicar na seta ao lado de robotium-solo-X.X.jar, para abrir as opções deste.
6. Clique duplo em Javadoc location > Selecionar a opção Javadoc in archieve > Clicar em Browse (lado direito de
Archieve path) > Selecionar o Javadoc robotium-solo-X.X-javadoc.jar > Clicar em OK
Testes de Caixa Branca (White Box Test) – Estrutura
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 13
package com.teste;
import com.robotium.solo.By;
import com.robotium.solo.Solo;
import android.annotation.SuppressLint;
import android.test.ActivityInstrumentationTestCase2;
import junit.framework.TestCase;
@SuppressLint("NewApi")
@SuppressWarnings("rawtypes")
public class Discador extends ActivityInstrumentationTestCase2 {
@SuppressWarnings("unchecked")
public Discador() {
super(launcherActivityClass);
}
private Solo rob;
private static final String LAUNCH_ACTIVITY_NAME = "com.dexetra.dialer.ui.KitkatActivity";
private static Class launcherActivityClass;
static {
try {
launcherActivityClass = Class.forName(LAUNCH_ACTIVITY_NAME);
} catch (Exception e) {
e.printStackTrace();
}
}
Pacote e Activity juntos
Como assinar um APK?
Obs.: Ter o WinRar instalado na máquina.
Voltar para o Teste de Caixa Preta
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 14
1. Criar uma pasta no C.
2. Adicionar o APK e o debug.keystore (C:UsersUSUÁRIO.androiddebug.keystore) na pasta criada.
3. Renomear o APK, trocando a sua extensão de .apk para .zip
4. Abrir o arquivo .zip com o WinRar > Excluir a pasta META-INF
5. Dentro da pasta criada, pressionar a tecla shift e clicar com o botão direito do mouse > Selecionar Abrir uma
janela de comando aqui
6. No CMD, inserir o comando abaixo, substituindo APK pelo nome do APK: jarsigner -keystore debug.keystore -
storepass android -keypass android sigalg MD5withRSA digestalg SHA1 APK.apk androiddebugkey
7. Pressionar a tecla ENTER > Ao terminar o primeiro comando, inserir o abaixo, substituindo APK pelo nome do
APK:
8. zipalign 4 APK.apk Temp APK.apk
9. APK assinado com sucesso!
Considerações e Dicas – Geral
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 15
Para realizar testes em aplicativos embarcados, o dispositivo deve ter Root.
Para que um método seja um teste, seu nome deve ter “test” no ínicio (Ex.: testInserirNota).
Separar os testes por funcionalidade do APK, através de métodos.
Para facilitar a criação do script, conversar com o Robotium.
Exemplo: (sendo private Solo rob;)
Rob, please, click on button. = rob.clickOnButton();
Rob, is check box checked? = rob.isCheckBoxChecked();
Utilizar try catch para apontar um possível erro no código (de acordo com a estrutura mostrada na figura abaixo).
Para a validação de uma funcionalidade apontada pelo teste, usa-se os Asserts.
Exemplo:
assertEquals: garante que o valor de algum objeto na tela é igual ao esperado .
assertTrue e assertFalse: garante que o retorno de alguma função (pesquisa, comparação, etc...) é true ou false.
Para validar se ao clicar no texto 1, o número 1 foi inserido.
Considerações e Dicas – Testes de Caixa Branca
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 16
Os ID’s presentes no código podem ser encontrados em: Projeto (que contém o código fonte) > res > layout
Executar o projeto (que contém o código fonte) como Android Aplication para verificar o fluxo do aplicativo.
Considerações e Dicas – Testes de Caixa Preta
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 17
Para descobrir o nome do pacote e da activity do aplicativo, usar o logcat do próprio ADT. Inserir displayed na
busca do logcat.
O nome do pacote tem o formato (Ex.: br.cits.teste).
A activity vem depois de uma barra ‘/’ (Ex. /.Discador).
É preciso adicionar a regra abaixo no manifest do projeto de black box.
<instrumentation android:targetPackage=" br.cits.teste"
android:name="android.test.InstrumentationTestRunner"/>
Os ID’s presentes no código podem ser encontrados no DDMS (Window > Show View > DDMS).
Utilizando o DDMS, é possível saber o tipo do botão (image button ou button, por exemplo).
Considerações e Dicas – Testes de Caixa Preta
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 18
DDMS
Sikuli
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL
19
O que é o Sikuli?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 20
• Uma ferramenta de teste capaz de automatizar tudo que se vê na tela do computador.
• A ferramenta é orientada por imagens capturadas na tela.
• Sua instalação é extremamente fácil e é desejável sua integração com a ferramenta Mobizen.
O que é preciso para utilizar o Sikuli em dispositivos móveis?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 21
• Java SE Development Kit.
• Mobizen
• Um dispositivo real (Android).
Como configurar o ambiente de testes, utilizando a plataforma
Windows?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 22
1. Instalar o JDK e reiniciar a máquina.
2. Instalar o Mobizen e seguir os passos indicados pelo instalador deste.
3. Instalar o Sikuli IDE e seguir os passos indicados pelo instalador deste.
Como criar os scripts de teste?
©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 23
1. Com o Mobizen sincronizado e
espelhado com o dispositivo a
ser testado, realizar o passo 2;
2. Com o Sikuli aberto, selecionar
as opções de ação localizadas
no menu esquerdo e capturar
o screenshot da área desejada;
3. Após ter criado o script e salvá-
lo, clicar em Executar.
Robotium e Sikuli –Testes Automatizados
Lucas Cortazzo
Analista de Teste Jr.
lucas.cortazzo@citsamazonas.br
55 92 98464-3636
Avenida Açaí, 875 - Bloco E, Distrito Industrial 1 | CEP 69.075-020 - Manaus/AM - Brasil | Tel. +55 92 3308-7200 | Fax. +55 92 3308-8200

Robotium_Sikuli

  • 1.
    Robotium e Sikuli–Testes Automatizados Configuração e execução dos scripts ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 1
  • 2.
    Objetivo ©2015 CITS AMAZONAS- CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 2 • Utilizar as ferramentas Robotium e Sikuli para automatizar os testes para dispositivos móveis e/ou auxiliar os testes manuais, gerando massa de dados. • Configurar o ambiente de testes para ambas ferramentas. • Obs.: é recomendado que se utilize uma máquina com Windows 64bits e dedicada para os testes automatizados.
  • 3.
    Robotium ©2015 CITS AMAZONAS- CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 3
  • 4.
    O que éo Robotium? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 4 • Uma ferramenta de teste open source para dispositivos Android utilizada para White e Black Box Testing, focando mais o Black Box Testing. • Realiza testes unitários. • Testes podem ser executados em dispositivos reais ou AVD sendo desenvolvidos em Java com suporte ao Junit 3.
  • 5.
    O que épreciso para utilizar o Robotium? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 5 • SDK (Android Standard Development Kit). • Java SE Development Kit. • Um dispositivo real (Android) ou um AVD. • Robotium (robotium-solo-X.X.jar) * Para facilitar o uso do Robotium, obter o Javadoc dele.
  • 6.
    Como configurar oambiente de testes, utilizando a plataforma Windows? Dica: Manter todos os arquivos na unidade C. ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 6 1. Instalar o JDK e o SDK e reiniciar a máquina. 2. Criar uma variável do sistema nova para o SDK. Computador > Propriedades do Computador > Configurações avançadas do sistema > Variáveis de Ambiente > Novo • Nome da variável: Android_SDK • Valor da variável: É o caminho da SDK (Exemplo: C:android-sdk-windows) 3. Adicionar o caminho das pastas platform-tools e tools na variável do sistema Path. Computador > Propriedades do Computador > Configurações avançadas do sistema > Variáveis de Ambiente • Procurar pela variável do sistema Path. • Clicar em Editar e adicionar o caminho das pastas platform-tools e tools. • Obs.: Deve ser adicionado ‘;’ entre dois caminhos. • Exemplo: (...);C:Program FilesJavajdk1.7.0_25bin;C:android-sdk-windowsplatform-tools;C:android-sdk- windowstools Após ter feito este processo, reiniciar a máquina.
  • 7.
    Como configurar oADT no Eclipse IDE? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 7 1. Abrir o ADT localizado no mesmo diretório do SDK (geralmente seu ícone é igual ao do eclipse). 2. Com o ADT aberto, ir em: Window > Preferences > Android 3. Verificar se o caminho da SDK está correto. 4. Clicar em OK.
  • 8.
    Testes de CaixaBranca (White Box Test) – O que é? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 8 1. Teste Estrutural. 2. É a investigação detalhada da estrutura lógica interna do código. 3. Inserir as entradas e validar o caminho e transformações destas em saídas esperadas.
  • 9.
    Testes de CaixaBranca (White Box Test) – Configuração ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 9 É preciso ter o projeto do aplicativo com o código fonte deste. 1. Botão direito em cima do projeto com o código fonte > Android Tools > New Test Project 2. Inserir o nome do projeto de teste e clicar em Next > Selecionar o projeto (que contém o código fonte do aplicativo) como o test target > Clicar em Finish 3. Botão direito em cima do projeto de teste > Build Path > Configure Build Path > Selecionar a aba Libraries 4. Clicar em Add External JAR’s > Selecionar o jar do Robotium (robotium-solo-X.X.jar) 5. Clicar na seta ao lado de robotium-solo-X.X.jar, para abrir as opções deste. 6. Clique duplo em Javadoc location > Selecionar a opção Javadoc in archieve > Clicar em Browse (lado direito de Archieve path) > Selecionar o Javadoc robotium-solo-X.X-javadoc.jar > Clicar em OK
  • 10.
    Testes de CaixaBranca (White Box Test) – Estrutura ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 10 package br.cits.componentes.test; import com.robotium.solo.Solo; import br.cits.componentes.MainActivity; import android.test.ActivityInstrumentationTestCase2; import junit.framework.TestCase; public class CheckBox2 extends ActivityInstrumentationTestCase2<MainActivity> { private Solo rob = null; public CheckBox2(){ super(MainActivity.class); } protected void setUp() throws Exception { super.setUp(); rob = new Solo(getInstrumentation(), getActivity()); rob.clickOnButton("Check Box"); } protected void tearDown() throws Exception { rob.finishOpenedActivities(); super.tearDown(); } }
  • 11.
    Testes de CaixaBranca (White Box Test) – O que é? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 11 1. Teste Funcional. 2. É a técnica de testar sem ter conhecimento da estrutura lógica interna do código. 3. O tester não tem acesso ao código e geralmente interage com a UI do aplicativo, providenciando entradas e examinando as saídas sem saber como e aonde as entradas são processadas.
  • 12.
    Testes de CaixaBranca (White Box Test) – Configuração ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 12 É preciso ter o APK assinado para testes. Como assinar um APK? No ADT, segue os passos abaixo: 1. File > New > Other > Android Test Project 2. Inserir o nome do projeto de teste e clicar em Next > Selecionar a opção This project > Clicar em Finish 3. Botão direito em cima do projeto de teste > Build Path > Configure Build Path > Selecionar a aba Libraries 4. Clicar em Add External JAR’s > Selecionar o jar do Robotium (robotium-solo-X.X.jar) 5. Clicar na seta ao lado de robotium-solo-X.X.jar, para abrir as opções deste. 6. Clique duplo em Javadoc location > Selecionar a opção Javadoc in archieve > Clicar em Browse (lado direito de Archieve path) > Selecionar o Javadoc robotium-solo-X.X-javadoc.jar > Clicar em OK
  • 13.
    Testes de CaixaBranca (White Box Test) – Estrutura ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 13 package com.teste; import com.robotium.solo.By; import com.robotium.solo.Solo; import android.annotation.SuppressLint; import android.test.ActivityInstrumentationTestCase2; import junit.framework.TestCase; @SuppressLint("NewApi") @SuppressWarnings("rawtypes") public class Discador extends ActivityInstrumentationTestCase2 { @SuppressWarnings("unchecked") public Discador() { super(launcherActivityClass); } private Solo rob; private static final String LAUNCH_ACTIVITY_NAME = "com.dexetra.dialer.ui.KitkatActivity"; private static Class launcherActivityClass; static { try { launcherActivityClass = Class.forName(LAUNCH_ACTIVITY_NAME); } catch (Exception e) { e.printStackTrace(); } } Pacote e Activity juntos
  • 14.
    Como assinar umAPK? Obs.: Ter o WinRar instalado na máquina. Voltar para o Teste de Caixa Preta ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 14 1. Criar uma pasta no C. 2. Adicionar o APK e o debug.keystore (C:UsersUSUÁRIO.androiddebug.keystore) na pasta criada. 3. Renomear o APK, trocando a sua extensão de .apk para .zip 4. Abrir o arquivo .zip com o WinRar > Excluir a pasta META-INF 5. Dentro da pasta criada, pressionar a tecla shift e clicar com o botão direito do mouse > Selecionar Abrir uma janela de comando aqui 6. No CMD, inserir o comando abaixo, substituindo APK pelo nome do APK: jarsigner -keystore debug.keystore - storepass android -keypass android sigalg MD5withRSA digestalg SHA1 APK.apk androiddebugkey 7. Pressionar a tecla ENTER > Ao terminar o primeiro comando, inserir o abaixo, substituindo APK pelo nome do APK: 8. zipalign 4 APK.apk Temp APK.apk 9. APK assinado com sucesso!
  • 15.
    Considerações e Dicas– Geral ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 15 Para realizar testes em aplicativos embarcados, o dispositivo deve ter Root. Para que um método seja um teste, seu nome deve ter “test” no ínicio (Ex.: testInserirNota). Separar os testes por funcionalidade do APK, através de métodos. Para facilitar a criação do script, conversar com o Robotium. Exemplo: (sendo private Solo rob;) Rob, please, click on button. = rob.clickOnButton(); Rob, is check box checked? = rob.isCheckBoxChecked(); Utilizar try catch para apontar um possível erro no código (de acordo com a estrutura mostrada na figura abaixo). Para a validação de uma funcionalidade apontada pelo teste, usa-se os Asserts. Exemplo: assertEquals: garante que o valor de algum objeto na tela é igual ao esperado . assertTrue e assertFalse: garante que o retorno de alguma função (pesquisa, comparação, etc...) é true ou false. Para validar se ao clicar no texto 1, o número 1 foi inserido.
  • 16.
    Considerações e Dicas– Testes de Caixa Branca ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 16 Os ID’s presentes no código podem ser encontrados em: Projeto (que contém o código fonte) > res > layout Executar o projeto (que contém o código fonte) como Android Aplication para verificar o fluxo do aplicativo.
  • 17.
    Considerações e Dicas– Testes de Caixa Preta ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 17 Para descobrir o nome do pacote e da activity do aplicativo, usar o logcat do próprio ADT. Inserir displayed na busca do logcat. O nome do pacote tem o formato (Ex.: br.cits.teste). A activity vem depois de uma barra ‘/’ (Ex. /.Discador). É preciso adicionar a regra abaixo no manifest do projeto de black box. <instrumentation android:targetPackage=" br.cits.teste" android:name="android.test.InstrumentationTestRunner"/> Os ID’s presentes no código podem ser encontrados no DDMS (Window > Show View > DDMS). Utilizando o DDMS, é possível saber o tipo do botão (image button ou button, por exemplo).
  • 18.
    Considerações e Dicas– Testes de Caixa Preta ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 18 DDMS
  • 19.
    Sikuli ©2015 CITS AMAZONAS- CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 19
  • 20.
    O que éo Sikuli? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 20 • Uma ferramenta de teste capaz de automatizar tudo que se vê na tela do computador. • A ferramenta é orientada por imagens capturadas na tela. • Sua instalação é extremamente fácil e é desejável sua integração com a ferramenta Mobizen.
  • 21.
    O que épreciso para utilizar o Sikuli em dispositivos móveis? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 21 • Java SE Development Kit. • Mobizen • Um dispositivo real (Android).
  • 22.
    Como configurar oambiente de testes, utilizando a plataforma Windows? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 22 1. Instalar o JDK e reiniciar a máquina. 2. Instalar o Mobizen e seguir os passos indicados pelo instalador deste. 3. Instalar o Sikuli IDE e seguir os passos indicados pelo instalador deste.
  • 23.
    Como criar osscripts de teste? ©2015 CITS AMAZONAS - CENTRO INTERNACIONAL DE TECNOLOGIA DE SOFTWARE DO AMAZONAS. ALL RIGHTS RESERVED - CONFIDENTIAL 23 1. Com o Mobizen sincronizado e espelhado com o dispositivo a ser testado, realizar o passo 2; 2. Com o Sikuli aberto, selecionar as opções de ação localizadas no menu esquerdo e capturar o screenshot da área desejada; 3. Após ter criado o script e salvá- lo, clicar em Executar.
  • 24.
    Robotium e Sikuli–Testes Automatizados Lucas Cortazzo Analista de Teste Jr. lucas.cortazzo@citsamazonas.br 55 92 98464-3636 Avenida Açaí, 875 - Bloco E, Distrito Industrial 1 | CEP 69.075-020 - Manaus/AM - Brasil | Tel. +55 92 3308-7200 | Fax. +55 92 3308-8200