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éseketA 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
- Tervezési teszt specifikáció
- Tesztprogram kidolgozása
- Végezze el a tesztesetet a céleszközön
- 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