getting started with robotium most popular android application ui testing tool
Robotium és el marc d'Android Test Automation per provar aplicacions Android natives i híbrides . Proporciona una API senzilla per escriure scripts d'automatització de la interfície d'usuari. No obstant això, el nombre d'eines disponibles per provar aplicacions d'Android, Robotium és el més utilitzat Eina de proves d'Android .
Robotium es pot utilitzar per escriure casos de proves d’acceptació funcionals, del sistema i dels usuaris. Els casos de proves de Robotium es poden executar a l'emulador d'Android i al dispositiu real d'Android.
Per llegir més => Guia per a principiants sobre proves d’aplicacions mòbils
Què aprendreu:
Introducció a Robotium
Avantatges de Robotium
- Fàcil d’escriure
- API simple (tots els mètodes només estan disponibles a la classe Solo)
- Retards i horaris automàtics
- No cal escriure codi quan es navega d’una activitat a una altra.
- Proveu les aplicacions natives d'Android i l'aplicació híbrida.
- Capaç de gestionar diverses activitats d'Android.
- Menys temps per escriure proves ja que l’API és senzill.
- Els casos de prova són robustos, a causa de l’enllaç en temps d’execució als components de la interfície d’usuari
- Execució ràpida del cas de prova.
- S'integra fàcilment amb Maven i ANT.
Prerequisits
# 1) Baixeu i instal·leu JAVA
- Descarregueu Java de aquesta pàgina .
- Afegiu biblioteques java al PATH i configureu JAVA_HOME a l'arrel del directori d'instal·lació java del vostre entorn.
# 2) Baixeu el paquet ADT
- Baixeu-vos el paquet ADT des de aquesta pàgina .
- Extraieu el paquet zip ADT i poseu-lo en una carpeta.
- Establiu ANDROID_HOME a l'arrel de la carpeta del paquet ADT al vostre entorn.
Creació d’un projecte Robotium
Només es necessiten uns quants passos per crear un projecte,
Pas 1) Obrir Eclipsi, conté la vostra aplicació per Android per ser provada.
Pas 2) Feu clic amb el botó dret del ratolí al projecte d'Android -> Eines d'Android i feu clic al nou projecte de prova.
Pas 3) Poseu un nom per al projecte de prova i feu clic al botó Següent.
Pas 4) Seleccioneu l'aplicació que es prova com a objectiu i feu clic al botó Finalitza.
Pas 5) El projecte de prova es crearà a l'espai de treball eclipsi.
Pas 6) Descarregueu el robot solo de Robotium des de aquí .
Pas 7) Feu clic amb el botó dret del ratolí sobre el projecte de prova a l'espai de treball Aneu al camí de construcció i feu clic a Configura el camí de construcció.
Pas 8) Canvieu a la pestanya Biblioteques, feu clic a l'opció 'Afegeix pots externs' i navegueu pel fitxer descarregat de Robotium jar i afegiu-lo a les biblioteques i feu clic a 'D'acord'.
Pas 9) El projecte Robotium Test es crea amb èxit. Ara podem crear classes sota el projecte i començar a escriure els casos de prova.
Creació de la classe Robotium
# 1) Feu clic amb el botó dret al paquet del directori src del projecte de prova i creeu una nova classe.
# 2) Importeu la classe Activitat principal el projecte de prova Robotium.
Sintaxi :
import com.sasi.attendanceproject.Home;
# 3) La nova classe heretarà les propietats de la classe ActivityInstrumentationTestCase2
public class AttendanceTest extends ActivityInstrumentationTestCase2
( Nota: Aquí, Inici és l'activitat que es prova a l'aplicació Android)
# 4) Creeu una instància per a la classe Solo com es mostra a continuació
private Solo solo;
# 5) Creeu un constructor per a la classe Test, tal com es mostra a continuació
public AttendanceTest() { super(Home.class); // TODO Auto-generated constructor stub
# 6) Creeu mètodes setUp i tearDown, tal com es mostra a continuació
setUp s’utilitza el mètode per iniciar la instrumentació
public void setUp()throws Exception { solo=new Solo(getInstrumentation(), getActivity()); }
Desgarrament s’utilitza el mètode per tancar l’activitat un cop finalitzada la prova.
public void tearDown() throws Exception { solo.finishOpenedActivities(); }
Alguns mètodes de Robotium
# 1) assertCurrentActivity (text, activitat)
Aquest mètode verifica si l'activitat actual és l'activitat que es passa com a paràmetre d'enviament.
Sintaxi
solo.assertCurrentActivity('Current Activity', Home.class);
# 2) clickOnButton (text)
Aquest mètode farà clic al botó amb el text especificat.
Sintaxi:
solo.clickOnButton('ADMIN');
# 3) clickOnButton (int)
Aquest mètode farà clic al botó amb l'índex especificat.
Sintaxi:
solo.clickOnButton(2);
# 4) waitForText (text)
Aquest mètode s'esperarà fins que aparegui el text a l'activitat.
Sintaxi:
solo.waitForText('Creating New Password');
# 5) enterText (int, text)
Aquest mètode escriurà el text passat com a segon paràmetre al quadre d'edició d'índex especificat.
Sintaxi:
solo.enterText(0,'test');
# 6) clickOnCheckbox (int)
Aquest mètode farà clic a la casella de selecció amb l'índex indicat.
Sintaxi:
solo.clickOnCheckBox(0);
# 7 ) clickOnRadioButton (int)
Aquest mètode farà clic al botó d'opció amb l'índex indicat.
Sintaxi:
solo.clickOnRadioButton(1);
# 8) clickOnImage (int)
Aquest mètode farà clic a la imatge amb l'índex indicat.
Sintaxi:
solo.clickOnImage(1);
# 9) clearEditText (int)
Aquest mètode esborrarà el text del quadre d'edició amb l'índex indicat.
Sintaxi:
solo.clearEditText(0);
# 10) waitForText (text)
Aquest mètode esperarà fins que aparegui el text donat a l'activitat.
Sintaxi:
solo.waitForText(“Robotium”);
Exemple de programa
Localització d'elements a l'aplicació Android
ordres unix preguntes i respostes de l'entrevista pdf
Pas 1) Obriu Eclipse que conté l'aplicació d'Android a provar.
Pas 2) Amplieu el projecte, aneu a res? Carpeta de disseny i feu doble clic al fitxer XML d'activitat que vulgueu automatitzar. Obrirà l'activitat dissenyada a l'editor d'eclipsis.
Pas 3) Element de botó de localització
- Localització de l’element per identificador
Feu clic a l'element que vulgueu localitzar. Al tauler de propietats del costat dret, podeu trobar l’identificador d’aquest element. (ignora @ + id /)
A la figura superior, l’identificador de l’element és, btnadmin.
El codi corresponent de Robotium per localitzar aquest botó és,
solo.clickOnButton(R.id.btnadmin);
- Localització de l'element per posició
En cas que, si l'identificador no està disponible, podeu localitzar l'element mitjançant la comanda. Si el botó es troba a la segona posició, podeu localitzar el botó per,
solo.clickOnButton(1);
- Localització de l’element per text
Fins i tot podeu fer clic al botó amb el text que apareix al botó.
Solo.clickOnButton(“ADMIN”);
- Localització de l'element del quadre de text
Utilitzant una manera similar, feu clic al quadre de text que voleu introduir dades i cerqueu la posició del quadre de text a la part dreta.
Solo.enterText(0,”Anitha”); //Username textbox is in 1st position
Solo.enterText(1,”test”); //Password textbox is in 2nd position
- Localització d’un element de botó d’opció
Feu clic a l'element del botó d'opció; voleu fer clic i esbrinar la posició del botó d'opció.
Solo.clickOnRadioButton(1); //It will location radio button in the second position.
Codi de mostra
package com.sasi.attendanceproject.test; import android.test.ActivityInstrumentationTestCase2; import android.widget.EditText; import com.robotium.solo.By; import com.robotium.solo.Solo; import com.robotium.solo.WebElement; import com.sasi.attendanceproject.Home; public class AttendanceTest extends ActivityInstrumentationTestCase2{ private Solo solo; public AttendanceTest() { super('com.sasi.attendanceproject.Home',Home.class); // TODO Auto-generated constructor stub } public void setUp()throws Exception{ solo=new Solo(getInstrumentation(),getActivity()); } public void testAttendance()throws Exception{ //solo.assertCurrentActivity('Current Activity', Home.class); solo.waitForWebElement(By.id('btnadmin')); solo.clickOnButton('ADMIN'); solo.clickOnButton(0); solo.waitForText('Creating New Password'); solo.enterText(0, 'test'); solo.enterText(1, 'test'); solo.clickOnButton('Okay'); solo.waitForText('Attendance Login'); solo.enterText(0, 'Anitha'); solo.enterText(1, 'test'); solo.clickOnButton('Login'); solo.waitForWebElement(By.id('btnaddnew')); solo.clickOnButton('Add New Details'); solo.waitForText('Enter the Employee Details'); solo.enterText(0, 'Anitha'); solo.enterText(1, '6'); solo.enterText(2, 'Testing Engineer'); solo.clickOnRadioButton(1); solo.clickOnButton('Okay'); solo.waitForWebElement(By.id('tvempID')); System.out.println(solo.getText(0)); } public void tearDown()throws Exception{ solo.finishOpenedActivities();}}
Execució del Projecte Robotium
Des d'Eclipse:
Feu clic amb el botó dret del ratolí sobre el projecte i seleccioneu Executa com -> Android JUnit Test
Des del símbol del sistema:
Pas 1) Cd al directori del projecte de prova d’Android
Pas 2) Executeu l'ordre següent,
adb shell am instrument -w <>/android.test.InstrumentationTestRunner
Conclusió
- Robotium és l'eina d'automatització d'Android Test més utilitzada.
- Els casos de prova de Robotium es poden executar a Android Emulator, així com al dispositiu Real, no cal escriure cap codi de configuració específic per executar casos de prova de Robotium al dispositiu Real.
- Robotium també es pot escriure fàcilment al projecte Maven i es pot executar mitjançant eines d’integració contínua.
- Per tant, Robotium és molt útil per escriure scripts d'automatització d'Android Test fàcils / senzills.
Lectura recomanada => 5 reptes i solucions de proves de mòbil
Sobre l'autor: Aquest és un missatge de convidat d'Anitha Eswari. Actualment treballa com a enginyera de proves sènior amb més de tres anys d’extensa experiència en proves d’automatització web i mòbil. Té un bon coneixement en diverses eines de proves d’automatització, incloses eines de proves mòbils com Robotium i Appium.
En el nostre proper article, en parlarem més sobre Tutorial Selendroid.
Lectura recomanada
- Diferència entre la prova d'escriptori, el servidor de clients i la prova web
- Tutorial de proves de la interfície d'usuari mòbil (proves GUI d'aplicacions per a iOS i Android)
- 11 millors eines d'automatització per provar aplicacions d'Android (eines de prova d'aplicacions d'Android)
- Instal·lació de l'aplicació al dispositiu i inici de proves des d'Eclipse
- Prova de càrrega mitjançant LoadUI: una eina de prova de càrrega de codi obert i lliure
- Tutorial d'Appium per provar aplicacions mòbils Android i iOS
- Tutorial de proves de la GUI: una guia completa de proves de la interfície d'usuari (UI)
- Les millors eines de prova de programari 2021 [Eines d'automatització de proves de control de qualitat]