Robotium Tutorial: Vaše první Android Rámec

Co je to Robotium?

Robotium je testovací rámec pro Android pro automatizaci testovacích případů pro nativní a hybridní aplikace. Pomocí Robotia může vývojář vytvořit silný automatický testovací případ GUI Android aplikací. Kromě toho by vývojář mohl napsat funkční, systémový a akceptační testovací scénář a mnohé rozšířit Android činnosti.

Robotický testovací rámec

Standard Android testovací rámec má určitá omezení, jak je uvedeno níže

  • Nelze zvládnout více činností
  • Výkon provádění testu je pomalý
  • Testovací případy jsou složité a obtížně implementovatelné

Robotiumrámec je lepší volbou pro provedení testování Android aplikace

Robotium je open source framework a je považován za jeho rozšíření Android testovací rámec. Pomocí Robotia může vývojář vytvořit robustní automatické testovací případy GUI Android aplikací. Kromě toho může vývojář psát funkční, systémové a akceptační testovací scénáře, které zahrnují více Android činnosti.

Pokročilé funkce Robotia
Pokročilé funkce Robotia

Třídy testovacích případů robota

Robotium používá sadu tříd (com.jayway.android.robotium.solo) na testování. Tato třída podporuje testovací případy, které zahrnují více aktivit. Solo je integrováno s ActivityInstrumentationTestCase2.

Třídy testovacích případů robota
Integrace Robotium a ActivityInstrumentationTestCase2

Tester může psát testovací případy bez znalosti návrhu aplikace (testování v černé skříňce) pomocí tříd testovacích případů Robotium. Je to vynikající vlastnost ve srovnání s Android třídy testovacích případů.

Jak používat Robotium

Chcete-li použít Robotium ve svém Android testovací projekt, musíte postupovat podle níže uvedených kroků

Použijte Robotium

Použití Robotia k provádění testování Android aplikace. Aby byla zaručena vaše kvalita Android aplikaci, měli byste postupovat podle níže uvedeného postupu

  1. Specifikace testu návrhu
  2. Vyvinout testovací program
  3. Provést Testovací případ na cílovém zařízení
  4. Sbírejte výsledek testu
Android aplikace
Android Postup testování aplikace Testování postup

KROK 1) Navrhněte specifikaci testu

  • Toto je první krok k otestování vaší aplikace. V tomto kroku definujete cíl, který má být testován. Ve vašem Android aplikace, existuje mnoho cílů, které je třeba otestovat, jako je uživatelské rozhraní, aktivita, komponenty, služby. Jasné definování cíle ve vaší aplikaci pomůže dosáhnout širokého pokrytí testem.
  • Naplánujte si, jaké typy testů by měly být provedeny (test jednotky, test funkčnosti, test systému).
  • Navrhněte testovací případy pro maximální pokrytí, ale minimalizujte počet testovacích případů. Čím více kódu je testováno, tím více je šance na včasné odhalení chyby.

KROK 2) Napište program TEST

Tato část vám poradí, jak napsat Android pomocí testovacího programu Android Junit Test a robotium. Předpokládejme, že jste již vyvinuli Android název programu Dobrý denAndroid. Tento program má některé funkce popsané níže:

  • Zobrazte text „Ahoj světe!“ na obrazovce.
  • Zobrazit zprávu Dobrý denAndroid když uživatel stiskne tlačítko „Start“.
AhojAndroid editaci videa
AhojAndroid editaci videa

Požadavky na systém

  • Android platforma je dodávána s předintegrovaným JUnit rámec 3.0.
  • Aby bylo možné vytvořit Android Testovací projekt od Eclipse, ve vašem počítači musí být nainstalováno:
  • Nejnovější verze Android Platforma (aktuálně Android 8.1)

Můžeš download Eclipse IDE s vestavěným ADT (Android Vývojářské nástroje). Zahrnuje to podstatné Android SDK komponenty a verze Eclipse IDE .

Pro testovací framework Robotium musíte stáhnout knihovnu Robotium Webová stránka Robotium.

Vytvořit Android Testovat projekt

  • Klikněte na Soubor -> Nový -> Jiné
  • Zvolte si: Android -> Android Testovat projekt podle obrázku níže -> Zvolte Další
Vytvořit nový Android testovací projekt
Vytvořit nové Android Testovat projekt

Napište název vašeho testovacího projektu. Podle konvence pojmenování by se váš testovací projekt měl jmenovat „AhojAndroidTest"

Přidat název testovacího projektu na základě konvence pojmenování
Přidejte název testovacího projektu na základě konvence pojmenování

Vyberte testovanou cílovou aplikaci. V tomto případě je to HelloAndroid klepněte na tlačítko Dokončit

Vybrat Target Testovaná aplikace
Vyberte testovanou cílovou aplikaci

Vytvořte testovací sady

Na základě specifikace testu jste začali vytvářet testovací sady pro svůj testovací program. Můžete si vybrat různé testovací rámce. V tomto návodu volím standardní Android testovací rámec ActivityInstrumentationTestCase2. Musíte přidat soubor knihovny Robotium do adresáře libs ve složce projektu v případě, že chcete testovat s frameworkem Robotium. (Ve složce projektu vytvoříte složku lib).

Testovací případ definuje přípravek pro spuštění více testů. Chcete-li definovat testovací případ, musíte postupovat podle níže uvedené struktury programu:

  • Implementujte podtřídu TestCase.
  • Definujte proměnné instance, které ukládají stav zařízení
  • Inicializujte stav zařízení přepsáním setUp()
  • Vyčištění po testu přepsáním tearDown().
Struktura testovacího programu
Struktura testovacího programu
package com.example.helloandroid.test;

import com.example.helloandroid.HelloAndroid;
import com.jayway.android.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2;
import android.widget.TextView;

public class HelloAndroidTest extends ActivityInstrumentationTestCase2 <HelloAndroid> {
    
	private HelloAndroid mActivity;
	private TextView mView;
	private String resourceString;
	private Solo solo;
	
	public HelloAndroidTest () {
		// TODO Auto-generated constructor stub
		super("com.example.helloandroid",HelloAndroid.class);	
	}
	
	 @Override
	protected void setUp() throws Exception {
		// TODO Auto-generated method stub
	//	super.setUp();
		 
	 	mActivity = this.getActivity();
		solo = new Solo(getInstrumentation(),getActivity());
		mView = (TextView) mActivity.findViewById(com.example.helloandroid.R.id.textview2);
		resourceString = mActivity.getString(com.example.helloandroid.R.string.hello_world);
		
	}
	 
	 @Override
	protected void tearDown() throws Exception {
		// TODO Auto-generated method stub
		//super.tearDown();
		solo.finishOpenedActivities();
	}
	
	public void testPrecondition() {
		assertNotNull(mView);
	}
	
	/* test Target application contains a text display "Hello World!"*/
	public void testSearchText() {
		assertEquals(resourceString,(String) mView.getText());
	}
	
	/* test HelloAndroid Activity on target application is exist*/
	public void testCurrentActivity() throws Exception  {
    	solo.assertCurrentActivity("wrong activity", HelloAndroid.class);
    }
    
	/* test Application UI contains "Start" button */
	/* send event click button to target application */
    public void testSearchButton() throws Exception {
    	boolean found = solo.searchButton("Start");
    	solo.clickOnButton("Start");
    	assertTrue(found);
    }

	

}

Přidávání testovacích případů

  • Ve stejném balíčku s TestSuite vytváříme třídy TestCase
  • Chcete-li otestovat určitou aktivitu, např. Dobrý denAndroid, vytvořte rozsah testovacího případu ActivityInstrumentationTestCase2Android>
  • V této třídě může tester získat testovací aktivitu pomocí metody getActivity() .
  • Test pro testovací aktivitu můžete volně vytvořit vytvořením metody s názvem „test + původní název metody“
  • V testovací metodě může tester použít Android JUnit funkce pro porovnání skutečné a očekávané hodnoty. Tyto metody jsou uvedeny níže.
Ukázkové metody Robotium a Android Testovací rámec
Ukázkové metody Robotium a Android Testovací rámec

Tyto testovací sady výše ověřily, že GUI aplikace musí zobrazovat text „Hello World!“ a obsahuje název tlačítka „Start“.

KROK 3) Spusťte test

Po dokončení psaní testovacího programu spusťte test pomocí níže uvedených kroků

  • mítinky Connect Android zařízení do počítače (nebo spusťte emulátor, pokud nemáte skutečné zařízení).
  • Ve vašem IDE klikněte pravým tlačítkem na Spustit jakoAndroid Test jednotky
Spuštění testovacího programu
Spuštěný testovací program

Kromě spuštění testu na IDE můžete spustit test na příkazovém řádku. V tomto testovacím programu je testovací balíček com.example.helloandroid.test . V Linux terminál, můžete použít následující příkaz ke spuštění všech testů v tomto balíčku:

$ adb shell am instrument -w -e balíček com.example.helloandroid.test

KROK 4) Získejte výsledek testu

Po provedení testu získáte výsledky testu.

V tomto testovacím programu se provádějí 4 testovací metody. V tomto případě projdou všechny testovací případy.

Výstup výsledku testu v případě Všechny testovací případy prošly úspěšně
Výstup výsledku testu v případě, že všechny testovací případy prošly

V případě, že testovací případ selže, zobrazí se výstup a ukáže vám, které testovací případy se nezdařily

Výstup výsledku testu v případě Všechny testovací případy se nezdařily
Výstup výsledku testu v případě, že všechny testovací případy selhaly

Příklady zdrojového kódu

Tyto články obsahují několik příkladů zdrojového kódu, které vám pomohou pochopit výukový program jasněji a rychle dohnat technické znalosti