Výukový program Robotium: Váš prvý rámec pre Android

Obsah:

Anonim

Čo je Robotium?

Robotium je androidový testovací rámec na automatizáciu testovacích prípadov pre natívne a hybridné aplikácie. Pomocou aplikácie Robotium môže vývojár vytvoriť silný prípad automatického testovania grafického používateľského rozhrania pre aplikácie pre Android. Okrem toho mohol vývojár napísať funkčný, systémový a akceptačný testovací scenár, ktorý rozšíri množstvo aktivít pre Android.

V tomto návode sa naučíte

  • Rámec na testovanie robotov
  • Ako používať Robotium
  • KROK 1) Špecifikácia testovacej skúšky
  • KROK 2) Napíš program TEST
  • KROK 3) Spustite test
  • KROK 4) Získajte výsledok testu

Rámec na testovanie robotov

Štandardný testovací rámec pre Android má určité obmedzenia, ako je uvedené nižšie

  • Nie je možné zvládnuť viac aktivít
  • Výkonnosť testu je pomalá
  • Testovacie prípady sú zložité a ťažko realizovateľné

Robotium rámec je lepšou voľbou pre testovanie správania v aplikácii pre Android

Robotium je open source rámec a považuje sa za rozšírenie testovacieho rámca pre Android. Pomocou aplikácie Robotium môže vývojár vytvárať robustné automatické testovacie prípady grafického používateľského rozhrania pre aplikácie pre Android. Okrem toho môže vývojár písať scenáre funkčných, systémových a akceptačných testov, ktoré zahŕňajú rôzne aktivity systému Android.

Pokročilé funkcie Robotium

Triedy testovacích prípadov Robotium

Robotium používa na testovanie skupinu tried ( com.jayway.android.robotium.solo ) . Táto trieda podporuje testovacie prípady, ktoré zahŕňajú viac aktivít. Solo je integrovaný s ActivityInstrumentationTestCase2.

Integration Robotium a ActivityInstrumentationTestCase2

Tester dokáže písať testovacie prípady bez znalosti návrhu aplikácie (testovanie čiernej skrinky) pomocou tried testovacích prípadov Robotium. Je to vynikajúca vlastnosť v porovnaní s triedami testovacích prípadov systému Android.

Ako používať Robotium

Ak chcete vo svojom testovacom projekte pre Android používať Robotium, musíte postupovať podľa nasledujúcich pokynov

Používanie Robotium na vykonávanie testovania na aplikácii pre Android. Ak chcete zaručiť kvalitu svojej aplikácie pre Android, mali by ste postupovať podľa nižšie uvedeného postupu

  1. Špecifikácia konštrukčného testu
  2. Vypracovať testovací program
  3. Vykonajte testovací prípad na cieľovom zariadení
  4. Zozbierajte výsledok testu

Postup testovania aplikácie pre Android

KROK 1) Špecifikácia testovacej skúšky

  • Toto je prvý krok na otestovanie vašej aplikácie. V tomto kroku definujete cieľ, ktorý sa má otestovať. Vo vašej aplikácii pre Android je potrebné otestovať veľa cieľov, ako napríklad používateľské rozhranie, aktivita, komponenty, služby. Jasné definovanie cieľa vo vašej aplikácii pomôže dosiahnuť široké pokrytie testom.
  • Naplánujte, aké typy testov by sa mali vykonať (test jednotky, funkčný test, test systému).
  • Navrhnite testovacie prípady pre maximálne pokrytie, ale minimalizujte počet testovacích prípadov. Čím viac kódu sa testuje, tým viac sa zvyšuje pravdepodobnosť včasnej detekcie chyby.

KROK 2) Napíš program TEST

V tejto časti sa dozviete, ako napísať program na testovanie systému Android pomocou programu Android Junit Test a Robotium. Predpokladajme, že ste už vyvinuli názov programu pre Android HelloAndroid. Tento program má niektoré funkcie popísané nižšie:

  • Zobraziť text „Hello world!“ na obrazovke.
  • Zobraziť správu HelloAndroid, keď používateľ stlačí tlačidlo „Štart“

Aplikácia HelloAndroid

Požiadavky na systém

  • Platforma Android je dodávaná s predintegrovaným rámcom JUnit 3.0.
  • Na vytvorenie projektu Android Test z Eclipse musí byť v počítači nainštalovaný:
    • Najnovšia verzia Platforma Android (momentálne Android 8.1)

Môžete si stiahnuť Eclipse IDE so zabudovaným ADT (Android Developer Tools). Zahŕňa základné komponenty súpravy Android SDK a verziu Eclipse IDE.

Pre testovací rámec Robotium je potrebné znížiť úroveň knižnice Robotium z webovej stránky Robotium.

Vytvorte projekt na testovanie systému Android

  • Kliknite na položky Súbor -> Nové -> Iné
  • Vyberte: Android -> Android Test Project podľa obrázka nižšie -> Vyberte Ďalej

Vytvorte nový testovací projekt pre Android

Napíšte názov vášho testovacieho projektu. Ako konvencia pomenovania by mal byť váš testovací projekt názov „HelloAndroidTest“

Pridajte základ názvu testovacieho projektu na základe konvencie pomenovania

Vyberte cieľovú testovanú aplikáciu. V tomto prípade je to HelloAndroid, kliknite na Dokončiť

Vyberte cieľovú testovanú aplikáciu

Vytvorte testovacie balíčky

Na základe svojej špecifikácie testu ste začali vytvárať testovacie balíčky pre váš testovací program. Môžete si vybrať rôzne testovacie rámce. V tomto výučbe som si vybral štandardný testovací framework pre Android ActivityInstrumentationTestCase2 . Súbor knižnice Robotium musíte pridať do adresára libs v priečinku projektu pre prípad, že chcete testovať pomocou rámca Robotium. (Priečinok lib vytvoríte v priečinku projektu).

Testovací prípad definuje zariadenie na vykonanie viacerých testov. Ak chcete definovať testovací prípad, musíte postupovať podľa nasledujúcej programovej štruktúry:

  • Implementujte podtriedu TestCase.
  • Definujte inštančné premenné, ktoré ukladajú stav zariadenia
  • Inicializujte stav zariadenia prepísaním setUp ()
  • Vyčistenie po teste prepísaním funkcie tearDown ().

Štruktúra testovacieho programu

balíček com.example.helloandroid.test;import com.example.helloandroid.HelloAndroid;import com.jayway.android.robotium.solo.Solo;import android.test.ActivityInstrumentationTestCase2;import android.widget.TextView;verejná trieda HelloAndroidTest rozširuje ActivityInstrumentationTestCase2  {súkromná aktivita HelloAndroid;súkromný TextView mView;private String resourceString;súkromné ​​sólo sólo;public HelloAndroidTest () {// TODO Automaticky generovaný útržok konštruktorasuper ("com.example.helloandroid", HelloAndroid.class);}@ Overrideprotected void setUp () vyvolá výnimku {// TODO Automaticky generovaný pahýl metódy// 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);}@ OverrideProtected Void tearDown () vyvolá výnimku {// TODO Automaticky generovaný pahýl metódy//super.tearDown ();solo.finishOpenedActivities ();}public void testPrecondition () {assertNotNull (mView);}/ * test Cieľová aplikácia obsahuje textový displej „Hello World!“ * /public void testSearchText () {assertEquals (resourceString, (String) mView.getText ());}/ * existuje test aktivity HelloAndroid na cieľovej aplikácii * /public void testCurrentActivity () vyvolá výnimku {solo.assertCurrentActivity ("nesprávna aktivita", HelloAndroid.class);}/ * testovacie používateľské rozhranie aplikácie obsahuje tlačidlo „Štart“ * // * odoslať udalosť kliknutím na tlačidlo na cieľovú aplikáciu * /public void testSearchButton () vyvolá výnimku {boolean found = solo.searchButton ("Štart");solo.clickOnButton ("Štart");assertTrue (nájdené);}}

Pridávanie testovacích prípadov

  • V rovnakom balíku s TestSuite vytvárame triedy TestCase
  • Ak chcete otestovať určitú aktivitu, tj. HelloAndroid, vytvorte rozsah testovacích prípadov ActivityInstrumentationTestCase2
  • V tejto triede môže tester získať testovaciu aktivitu pomocou metódy getActivity ().
  • Test na testovaciu aktivitu môžete ľubovoľne vytvoriť vytvorením metódy s názvom „test + pôvodný názov metódy“
  • V testovacej metóde môže tester použiť funkciu Android JUnit na porovnanie skutočnej a očakávanej hodnoty. Tieto metódy sú uvedené nižšie.

Príklady metód testovacieho prostredia Robotium a Android

Vyššie uvedené testovacie sady overili, že grafické rozhranie aplikácie musí zobrazovať text „Hello World!“ A obsahovať názov tlačidla „Start“.

KROK 3) Spustite test

Po dokončení písania testovacieho programu vykonajte test podľa pokynov uvedených nižšie

  • Pripojte zariadenie s Androidom k počítaču (alebo spustite emulátor, ak nemáte skutočné zariadenie).
  • Vo svojom IDE kliknite pravým tlačidlom myši na položku Spustiť ako Test jednotky Android

Prebieha testovací program

Okrem spustenia testu na IDE môžete test spustiť aj z príkazového riadku. V tomto testovacom programe je testovacím balíkom com.example.helloandroid.test. V termináli Linux môžete na vykonanie všetkých testov v tomto balíku použiť nasledujúci príkaz:

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

KROK 4) Získajte výsledok testu

Po vykonaní testu získate výsledky testu.

V tomto testovacom programe sa vykonávajú 4 testovacie metódy. V tomto prípade sú splnené všetky testovacie prípady.

Výstup výsledku testu v prípade, že prešli všetky prípady testu

V prípade zlyhania testovacieho prípadu sa zobrazí výstup, ktorý vám ukáže, ktoré testovacie prípady zlyhali

Výsledok testu v prípade, že zlyhajú všetky testovacie prípady

Príklady zdrojového kódu

Tento článok obsahuje niekoľko príkladov zdrojových kódov, ktoré vám pomôžu jasnejšie pochopiť výukový program a rýchlo získať technické znalosti

  • HelloAndroid: Testovaná aplikácia.
  • HelloAndroidTest: Testovací program využívajúci rámec Android Test