getting started with robotium most popular android application ui testing tool
Robotium är Android Test Automation-ramverket för att testa inbyggda och hybrid android-applikationer . Det ger ett enkelt API för att skriva UI-automatiseringsskript. Antalet verktyg är dock tillgängliga för testning av Android-applikationer, Robotium är det vanligaste Android-testverktyg .
Robotium kan användas för att skriva funktionella testfall, system- och användaracceptansfall. Robotium-testfall kan köras i Android-emulatorn såväl som Android-enheten.
Vidare läsning => Nybörjarguide för test av mobilapplikationer
Vad du kommer att lära dig:
Komma igång med Robotium
Fördelar med Robotium
- Lätt att skriva
- Enkelt API (alla metoder är endast tillgängliga i soloklass)
- Automatiska fördröjningar och tidsinställningar
- Inget behov av att skriva kod när du navigerar från en aktivitet till en annan aktivitet.
- Testa Android-appar såväl som hybridappen.
- Kan hantera flera Android-aktiviteter.
- Mindre tid att skriva tester eftersom API är enkelt.
- Testfall är robusta på grund av runtime-bindning till UI-komponenter
- Snabbt utförande av testfall.
- Integreras enkelt med Maven och ANT.
Förutsättningar
# 1) Ladda ner och installera JAVA
- Ladda ner Java från denna sida .
- Lägg till Java-bibliotek i PATH och ställ JAVA_HOME till roten till Java-installationskatalogen i din miljö.
# 2) Ladda ner ADT-paketet
- Ladda ner ADT-paketet från denna sida .
- Extrahera ADT-paketets zip och placera det i en mapp.
- Ställ ANDROID_HOME till roten till ADT-paketmappen i din miljö.
Skapa ett robotprojekt
Bara några steg krävs för att skapa ett projekt,
Steg 1) Open Eclipse, innehåller din Android-applikation som ska testas.
Steg 2) Högerklicka på Android-projektet -> Android-verktyg och klicka på det nya testprojektet.
Steg 3) Ge ett namn för testprojektet och klicka på knappen Nästa.
Steg 4) Välj applikationen som testas som mål och klicka på Slutför-knappen.
Steg # 5) Testprojekt skapas i eclipse-arbetsytan.
Steg # 6) Ladda ner Robotium solo burk från här .
Steg 7) Högerklicka på testprojektet i arbetsytan Gå till sökvägen och klicka på Konfigurera byggvägen.
Steg # 8) Byt till fliken bibliotek, klicka på alternativet 'Lägg till externa burkar' och bläddra i den nedladdade Robotium jar-filen och lägg till den i biblioteken och klicka på 'OK'.
Steg 9) Robotium Test-projektet har skapats framgångsrikt. Nu kan vi skapa klasser under projektet och börja skriva testfallet.
Skapa Robotium-klass
# 1) Högerklicka på paketet under src-katalogen i testprojektet och skapa en ny klass.
#två) Importera huvudaktivitetsklassen Robotium-testprojektet.
Syntax :
import com.sasi.attendanceproject.Home;
# 3) Ny klass kommer att ärva egenskaper från ActivityInstrumentationTestCase2-klassen
public class AttendanceTest extends ActivityInstrumentationTestCase2
( Notera: Här är Home den aktivitet som ska testas i Android-applikationen)
# 4) Skapa instans för solo-klass enligt nedan
private Solo solo;
# 5) Skapa en konstruktör för testklassen enligt nedan
public AttendanceTest() { super(Home.class); // TODO Auto-generated constructor stub
# 6) Skapa setUp och tearDown-metoder, enligt nedan
uppstart metoden används för att initiera instrumentationen
public void setUp()throws Exception { solo=new Solo(getInstrumentation(), getActivity()); }
Riva ner metoden används för att stänga aktiviteten efter att testet har slutförts.
public void tearDown() throws Exception { solo.finishOpenedActivities(); }
Några robotmetoder
# 1) assertCurrentActivity (text, Activity)
Denna metod verifierar om den aktuella aktiviteten är den aktivitet som skickas som sändparametern.
Syntax
solo.assertCurrentActivity('Current Activity', Home.class);
#två) klicka på knappen (text)
Denna metod kommer att klicka på knappen med den angivna texten.
Syntax:
solo.clickOnButton('ADMIN');
# 3) klicka på knappen (int)
Denna metod klickar på knappen med det angivna indexet.
Syntax:
solo.clickOnButton(2);
# 4) waitForText (text)
Denna metod väntar tills texten visas i aktiviteten.
Syntax:
solo.waitForText('Creating New Password');
# 5) enterText (int, text)
Den här metoden skriver texten som skickats som den andra parametern till den angivna indexredigeringsrutan.
Syntax:
solo.enterText(0,'test');
# 6) clickOnCheckbox (int)
Denna metod klickar på kryssrutan med angivet index.
Syntax:
solo.clickOnCheckBox(0);
# 7 ) klicka på OnRadioButton (int)
Denna metod kommer att klicka på radioknappen med det angivna indexet.
Syntax:
solo.clickOnRadioButton(1);
# 8) clickOnImage (int)
Denna metod klickar på bilden med det angivna indexet.
Syntax:
solo.clickOnImage(1);
# 9) clearEditText (int)
Denna metod rensar texten i redigeringsrutan med angivet index.
Syntax:
solo.clearEditText(0);
# 10) waitForText (text)
Denna metod väntar tills den angivna texten visas på aktiviteten.
Syntax:
solo.waitForText(“Robotium”);
Exempel på program
Hitta element i Android-applikationen
Steg 1) Öppna Eclipse som innehåller Android-applikationen som ska testas.
Steg 2) Expandera projektet, gå till res? Layoutmapp och dubbelklicka på aktiviteten XML-fil som du vill automatisera. Den öppnar den utformade aktiviteten i förmörkelsesredigeraren.
Steg 3) Lokalisera knappelement
- Hitta element efter ID
Klicka på elementet som du vill hitta. På egenskapspanelen till höger hittar du elementets ID. (ignorera @ + id /)
I figuren Ovan visas elementet, btnadmin.
Motsvarande robotkod för att hitta den här knappen är,
solo.clickOnButton(R.id.btnadmin);
- Lokalisera element efter position
Om ID inte är tillgängligt kan du hitta elementet med beställningen. Om knappen är i den andra positionen kan du hitta knappen genom att
solo.clickOnButton(1);
- Hitta element efter text
Du kan även klicka på knappen med texten som visas på knappen.
Solo.clickOnButton(“ADMIN”);
- Hitta textrutan Element
Klicka på textrutan på ett liknande sätt. Du vill ange data och hitta textrutans position från höger sida.
Solo.enterText(0,”Anitha”); //Username textbox is in 1st position
Solo.enterText(1,”test”); //Password textbox is in 2nd position
- Hitta ett alternativ för radioknappar
Klicka på Radio Button Element, du vill klicka och ta reda på radioknappens position.
Solo.clickOnRadioButton(1); //It will location radio button in the second position.
Exempelkod
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();}}
Genomförande av Robotium-projektet
Från Eclipse:
Högerklicka på projektet och välj Kör som -> Android JUnit Test
Från kommandotolken:
Steg 1) Cd till din Android Test Project Directory
Steg 2) Kör följande kommando,
bästa gratis databasprogramvara för Windows
adb shell am instrument -w <>/android.test.InstrumentationTestRunner
Slutsats
- Robotium är det mest använda Android-testautomationsverktyget.
- Robotium-testfall kan köras på Android Emulator liksom på Real-enheten, vi behöver inte skriva någon specifik konfigurationskod för att köra Robotium-testfall på Real-enheten.
- Robotium Kan också skrivas enkelt i Maven-projektet och det kan köras med kontinuerliga integrationsverktyg.
- Således är Robotium mycket användbart för att skriva enkla / enkla Android-testautomationsskript.
Rekommenderad läsning => 5 Mobila testutmaningar och lösningar
Om författaren: Detta är ett gästinlägg av Anitha Eswari. Hon arbetar för närvarande som senior testingenjör med mer än tre års lång erfarenhet av webb- och mobilautomatiseringstestning. Hon har goda kunskaper i olika automatiseringstestverktyg inklusive mobila testverktyg som Robotium och Appium.
I vår nästa artikel kommer vi att diskutera mer om Selendroid-handledning.
Rekommenderad läsning
- Skillnad mellan Desktop, Client Server Testing och Web Testing
- Handledning för mobil UI-testning (GUI-testning av iOS- och Android-appar)
- 11 bästa automatiseringsverktyg för testning av Android-applikationer (Android-apptestverktyg)
- Installera din applikation på enheten och börja testa från Eclipse
- Lasttestning med hjälp av LoadUI - Ett gratis testverktyg för öppen källkod
- Appium-handledning för testning av Android- och iOS-mobilappar
- GUI Testing Tutorial: A Complete User Interface (UI) Testing Guide
- Bästa verktyg för testning av programvara 2021 (QA Test Automation Tools)