Robotium oktatóanyag: Az első Android keretrendszer

Tartalomjegyzék:

Anonim

Mi az a Robotium?

A Robotium egy android tesztelési keretrendszer a natív és hibrid alkalmazások teszteseteinek automatizálására. A Robotium használatával a fejlesztő erős automatikus GUI tesztelő esetet hozhat létre az Android alkalmazások számára. Ezenkívül a fejlesztő leírhat egy funkcionális, rendszer- és elfogadási teszt forgatókönyvet, sok Android-tevékenységet terjesztve.

Ebben az oktatóanyagban megtanulja-

  • Robotium tesztelési keretrendszer
  • Hogyan kell használni a Robotiumot?
  • 1. LÉPÉS: Tervezési teszt specifikáció
  • 2. LÉPÉS: Írja meg a TEST programot
  • 3. LÉPÉS: Futtassa a tesztet
  • 4. LÉPÉS) Szerezd meg a teszt eredményét

Robotium tesztelési keretrendszer

A szokásos Android tesztelési keretrendszer az alábbiak szerint korlátozott

  • Nem lehet kezelni több tevékenységet
  • A teszt végrehajtása lassú
  • A tesztesetek összetettek és nehezen megvalósíthatók

A Robotium keretrendszer a jobb választás az Android alkalmazás tesztelésére

A Robotium nyílt forráskódú keretrendszer, és az Android tesztkeret kiterjesztésének számít. A Robotium használatával a fejlesztő robusztus automatikus GUI teszteseteket hozhat létre Android-alkalmazásokhoz. Ezenkívül a fejlesztő többféle Android-tevékenységet átfogva írhat funkcionális, rendszer- és elfogadási teszt forgatókönyveket.

A Robotium előnyei

Robotium teszteset osztályok

A Robotium osztályok készletét ( com.jayway.android.robotium.solo ) használja a teszteléshez . Ez az osztály több olyan tevékenységet támogató teszteseteket támogat. A Solo integrálva van az ActivityInstrumentationTestCase2.

Integráció Robotium és ActivityInstrumentationTestCase2

A tesztelő teszteseményeket írhat az alkalmazás tervezésének ismerete nélkül (fekete doboz tesztelése) a Robotium teszteset osztályainak felhasználásával. Kiemelkedő tulajdonság az Android teszteset-osztályokhoz képest.

Hogyan kell használni a Robotiumot?

A Robotium Android tesztprojektjében való használatához kövesse az alábbi lépéseket

A Robotium használata az Android alkalmazás teszteléséhez. Az Android-alkalmazás minőségének garantálása érdekében kövesse az alábbi eljárást

  1. Tervezési teszt specifikáció
  2. Tesztprogram kidolgozása
  3. Végezze el a tesztesetet a céleszközön
  4. Gyűjtse össze a teszt eredményét

Android alkalmazás Tesztelési eljárás

1. LÉPÉS: Tervezési teszt specifikáció

  • Ez az első lépés az alkalmazás tesztelésére. Ebben a lépésben meghatározza a tesztelendő célt. Android-alkalmazásában sok célt kell tesztelni, például felhasználói felületet, tevékenységet, összetevőket, szolgáltatásokat. A cél egyértelmű meghatározása az alkalmazásban elősegíti a széles teszt lefedettséget.
  • Tervezze meg a teszttípusokat (egység teszt, funkcionális teszt, rendszer teszt).
  • Tervezzen teszteseteket a maximális lefedettség érdekében, de minimalizálja a tesztesetek számát. Minél több kódot tesztelnek, annál nagyobb az esély a korai hibajelzésre.

2. LÉPÉS: Írja meg a TEST programot

Ez a szakasz bemutatja, hogyan kell Android tesztprogramot írni az Android Junit Test és a Robotium segítségével. Tegyük fel, hogy már kifejlesztett egy Android programnevet HelloAndroid. Ez a program az alábbiakban ismertet néhány funkciót:

  • Szöveg megjelenítése: "Hello world!" a képernyőn.
  • Üzenet megjelenítése HelloAndroid, amikor a felhasználó megnyomja a "Start" gombot

HelloAndroid alkalmazás

rendszerkövetelmények

  • Az Android platform előre integrált JUnit 3.0 keretrendszerrel rendelkezik.
  • Az Android Test Project Eclipse programból történő létrehozásához a számítógépnek telepítenie kell:
    • Az Android platform legújabb verziója (jelenleg Android 8.1)

Letöltheti az Eclipse IDE-t beépített ADT-vel (Android Developer Tools). Tartalmazza az alapvető Android SDK-összetevőket és az Eclipse IDE verzióját.

A Robotium tesztelési keretrendszerhez le kell állítania a Robotium könyvtárat a Robotium weboldaláról.

Hozzon létre Android tesztprojektet

  • Kattintson a Fájl -> Új -> Egyéb elemre
  • Válassza: Android -> Android Test Project az alábbi ábra szerint -> Válassza a Tovább lehetőséget

Hozzon létre új Android tesztprojektet

Írja meg a tesztprojekt nevét. Elnevezési szokásként a tesztprojektnek a „HelloAndroidTest” nevet kell tartalmaznia

Adjon hozzá tesztprojekt-névalapot a névadási egyezményhez

Válassza ki a tesztelt célalkalmazást. Ebben az esetben ez a HelloAndroid kattintson a Befejezés gombra

Válassza ki a tesztelt célalkalmazást

Hozzon létre tesztcsomagokat

A tesztspecifikáció alapján elkezdte létrehozni a tesztprogramokat a tesztprogram számára. Különféle tesztelési keretrendszereket választhat. Ebben az oktatóanyagban az ActivityInstrumentationTestCase2 szabványos Android tesztelési keretet választom . Hozzá kell adnia a Robotium könyvtárfájlt a projekt mappájában található libs könyvtárhoz, ha Robotium keretrendszerrel szeretne tesztelni. (A projekt mappában létrehoz egy lib mappát).

Egy teszteset meghatározza a több teszt futtatásához szükséges berendezést. Teszteset meghatározásához be kell tartania az alábbi programszerkezetet:

  • Alosztályának megvalósítása TestCase.
  • Adjon meg olyan példányváltozókat, amelyek tárolják a szerelvény állapotát
  • Inicializálja a készülék állapotát a setUp () felülbírálásával
  • Tisztítás egy teszt után a tearDown () felülbírálásával.

A tesztprogram felépítése

csomag com.example.helloandroid.test;import com.example.helloandroid.HelloAndroid;import com.jayway.android.robotium.solo.Solo;import android.test.ActivityInstrumentationTestCase2;import android.widget.TextView;a public class HelloAndroidTest kiterjeszti az ActivityInstrumentationTestCase2  {privát HelloAndroid mActivity;privát TextView mView;privát String resourceString;privát Solo szóló;public HelloAndroidTest () {// TODO Auto-generált konstruktor csonkszuper ("com.example.helloandroid", HelloAndroid.class);}@ Felülírásvédett void setUp () dobja a Kivételt {// TODO Automatikusan létrehozott módszercsonk// super.setUp ();mActivity = this.getActivity ();solo = új Solo (getInstrumentation (), getActivity ());mView = (TextView) mActivity.findViewById (com.example.helloandroid.R.id.textview2);resourceString = mActivity.getString (com.example.helloandroid.R.string.hello_world);}@ Felülírásvédett void tearDown () dobja a Kivételt {// TODO Automatikusan létrehozott módszercsonk//super.tearDown ();solo.finishOpenedActivities ();}public void testPrecondition () {assertNotNull (mView);}/ * teszt cél alkalmazás tartalmaz szöveges kijelzőt a "Hello World!" * /public void testSearchText () {assertEquals (resourceString, (String) mView.getText ());}/ * tesztelje a HelloAndroid tevékenységet a célalkalmazásban * /public void testCurrentActivity () dobja a Kivételt {solo.assertCurrentActivity ("rossz tevékenység", HelloAndroid.class);}/ * A tesztalkalmazás felhasználói felülete tartalmazza a "Start" gombot * // * esemény küldése kattintás gombra az alkalmazás megcélzásához * /public void testSearchButton () dobja a Kivételt {logikai érték = solo.searchButton ("Start");solo.clickOnButton ("Start");assertTrue (talált);}}

Tesztesetek hozzáadása

  • A TestSuite programmal azonos csomagban létrehozunk TestCase osztályokat
  • Bizonyos tevékenységek, azaz a HelloAndroid teszteléséhez hozzon létre egy teszteset mértéket ActivityInstrumentationTestCase2
  • Ebben az osztályban a tesztelő a getActivity () módszerrel szerezhet tesztelési tevékenységet.
  • Szabadon létrehozhat tesztet egy tesztelési tevékenységhez a "teszt + eredeti módszer neve" nevű metódus létrehozásával.
  • A tesztelési módszerben a tesztelő az Android JUnit funkcióval összehasonlíthatja a tényleges és a várható értéket. Ezeket a módszereket az alábbiakban mutatjuk be.

Példa a Robotium és az Android tesztelési keretrendszerére

Ezek a fenti tesztcsomagok igazolták, hogy az alkalmazás GUI-nak egy "Hello World!" Szöveget kell megjelenítenie, és tartalmaznia kell egy "Start" gomb nevet.

3. LÉPÉS: Futtassa a tesztet

Miután befejezte a tesztprogram megírását, futtassa a tesztet az alábbi lépésekkel

  • Csatlakoztassa az Android-eszközt a számítógépéhez (vagy indítsa el az Emulator alkalmazást, ha nincs valós eszköze).
  • IDE-jében kattintson a jobb gombbal az Indítás az Android egység tesztjére elemre

Tesztprogram futtatása

A teszt futtatása az IDE-n kívül a parancssoron is futtatható. Ebben a tesztprogramban a tesztcsomag a com.example.helloandroid.test. A Linux terminálban a következő paranccsal futtathatja a csomag összes tesztjét:

$ adb shell am instrument -w -e csomag com.example.helloandroid.test

4. LÉPÉS) Szerezd meg a teszt eredményét

A teszt végrehajtása után kap teszt eredményeket.

Ebben a tesztprogramban 4 tesztmódszert hajtanak végre. Ebben az esetben az összes teszteset sikeres.

Vizsgálati eredmény kimenet abban az esetben, ha minden teszteset sikeres volt

Abban az esetben, ha a teszteset kudarcot vall, a kimenet megjelenik és megmutatja, hogy mely teszt esetek sikertelenek

A teszt eredménye, ha az összes teszt nem sikerült

Forráskódos példák

Ez a cikk néhány példát tartalmaz a forráskódra, amelyek segítenek az oktatóanyag tisztább megértésében és a technikai ismeretek gyors felismerésében

  • HelloAndroid: Alkalmazás tesztelés alatt áll.
  • HelloAndroidTest: Tesztelő program az Android Test keretrendszerrel