Bevezető
Az előző részben általánoságban néztük meg, hogy mik is azok az eszközfarmok és mire jók. Ebben részben konkrét farmokat hasonlítunk össze.
A legnépszerűbb eszközfarm emulátorok
1. Firebase Testlab (https://firebase.google.com/docs/test-lab)
Ezt a Google fejlesztette ki – alapvetően Android alkalmazások tesztelésére készült, de iOS alkalmazásokat is tesztelhetünk vele. Valódi éles eszközöket használ a Google adatközpontokban futó alkalmazások teszteléséhez.
Mik az előnyei?
- ingyenes, és az egyik legnépszerűbb emulátor
- testreszabható területi beállításokkal és frissített API-kkal rendelkezik
- a hardver és szoftver megfelelő konfigurálásával könnyedén tesztelhetjük
- a Google adatközpontjaiban tárolt iOS és Android eszközök széles skáláján futtathatunk teszteket
- integrálva van az Android Studióval, a Firebase konzollal és a gCloud CLI-vel, ezen kívül könnyen integrálhatjuk DevOps folyamatokba
- a szkriptek végrehajtásához az Espresso, Robotium, UI Automator 2.0 és Robo eszközöket használhatjuk
Mik a hátrányai?
-1 tesztelés alkalmával maximum 45 perc áll rendelkezésre, és ingyenes verzióval csak 5 tesztet végezthetünk egy nap
Hogyan használjuk egyszerűen a Firebase Testlab emulátort?
- Futtassuk a Instrumentation vagy Robo tesztet Androidra, iOS esetén pedig a GameLoopot vagy XCTestet
- Töltsük fel az APK fájlt
- Szabjuk testre a tesztfelületet az eszközök, a területi beállítások, a képernyőtájolás és az operációs rendszer verzióinak kiválasztásával
- Futtassuk a teszteseteket, és tekintsük meg a teszteredmények riportjait a Firebase konzolon
Fontos: ebben a programban nem jelenik meg manuálisan tesztelhető virtuális mobilfelület, csak robottal tudjuk futtatni az applikációt, melynek eredményeit, videofelvételeit megtekinthetjük a Test Lab menü/kiválasztott test matrix nevére kattintva/Device Details menüpontban
2. Samsung Remote Test Lab (https://developer.samsung.com/remote-test-lab)
A Samsung birtokolja a világ okostelefon- és Androidpiacának a nagyrészét, így ők is piacra dobták a saját, csak Samsung készülékeket emuláló, ingyenes tesztelési lehetőséggel bíró eszközfarmjukat. Jelenleg úgy működik, hogy lefoglaljuk a kiválasztott eszközt és futtat egy speciális Java alkalmazást, amely távoli hozzáférést biztosít a képernyőhöz és a beviteli eszközökhöz (érintőképernyő, gombok).
Mik az előnyei?
- Ez az eszközfarm nemcsak a meglévő Samsung készülékek listáját tartalmazza, hanem a tesztelőként azokhoz az innovációkhoz is hozzáférhetünk, amiket még nem dobtak piacra! 😊
- Tizen-alapú eszközöket (Z mobilokat és Gear okosórákat) is igénybe vehetünk virtuálisan
- Több, mint 30 okostelefonon és táblagépen van lehetőségünk tesztelni, azt is kiválasztva, hogy mennyi ideig kívánjuk a tesztet futtatni
Mik a hátrányai?
- Kizárólag Samsung okostelefonokat tesztelhetünk
- Adott kreditszámú eszközöket vehetünk igénye, de a jó hír az, hogy az elhasznált krediteket egy kattintással újraigényelhetjük
- Javasolt böngészőként a Chrome-ot ajánljuk használni (felugró ablak engedélyezésével!), mert más böngészőkben nem fut rendesen
- A Samsung fiókba való bejelentkezéskor mindenképpen állítsuk be a 2 lépcsős azonosítást, mert normál google felhasználónév és jelszóval nem fogunk tudni belépni
3. Kobiton (https://www.kobiton.com/)
A Kobiton segítségével több száz valós eszközhöz férhetünk hozzá, emellett rengeteg funkcióval rendelkezik bonyolult beállítási eljárások nélkül. Támogatja a nyílt szabványú keretrendszereket, ami azt jelenti, hogy a szkriptek védettek – hogy ezek közül néhányat említsünk: Appium, Espresso, Selenium, XCUI.
Mik az előnyei?
- Érzékeli a koppintást, csúsztatást, görgetést stb.
- Függetlenül attól, hogy manuális vagy automatizált teszteket futtatunk, részletes és információban gazdag tesztnaplókat rögzít olyan formátumban, mint a képernyőképek és videók, valamint olyan mutatókat, mint a memória és az akkumulátor teljesítménye.
- Párhuzamosan futtathatjuk sz összes tesztszkriptet
- Lehetővé teszi, hogy gyorsan integráljuk a CI/CD-folyamatokba.
- Az ADB hibakeresés segítségével könnyedén hozzáférhet a felhő (vagy helyi) eszközökhöz közvetlenül a fejlesztői munkaállomásról, és natív módon érheti el a mobileszközöket közvetlenül az IDE-ről.
- Használhatunk VPN-t is privát Kobiton felhőjéből
- 500 perc/hó ingyenes tesztelési lehetőséget biztosít
Mik a hátrányai?
- A fizetős szolgáltatásai nagyon drágák
- Minden tesztappot csak másodjára sikerült telepíteni, mert az elsőnél mindig hibaüzenetet kaptunk
- Tesztelés során nem ad hangot a készülék, holott az applikáció magában foglalja a hangok kiadását
- A statisztikák, metrikák, device logok könnyen hozzáférhetők és értelmezhetők, rengeteg eszközt lehet tesztelni, de a tesztelési lehetőségek meglehetősen szűkösek a trial verzióban
4. Sauce Labs (https://saucelabs.com/platform/mobile-emulators-and-simulators)
A Sauce Labs az automatizált tesztelés piacának egyik veteránja. Jason Huggins, a Selenium megalkotója csapott le erre a szolgáltatásra, így a Selenium rajongók tetszeni fog ez az emulátor.
Mik az előnyei?
- Az automatizált tesztelés elvégzéséhez az árak havi 149 dollártól kezdődnek – vannak natív és hibrid alkalmazások iOS-re és Androidra, valamint lehetőség van saját privát felhő szervezésére vagy manuális tesztelésre
- Támogatja a DevOps folyamatokkal való integrációt és az emulátorokon/szimulátorokon való futtatást
- Tesztelés alatt megoszthatjuk a képernyőnket már Sauce Labs-es userrel à fontos, hogy megosztáskor a másik felhasználóval a username + access key kombinációval tudunk belépni!
- Könnyen feltelepíthetőek az appok, és könnyen használható
Mik a hátrányai?
- nem áll rendelkezésre több, mint 20 eszközmodell ☹
- ingyenesen 60 perc áll rendelkezésre a teszteléshez
- sok lehetőséget nem lehet tesztelni, ingyenes verzióban nagyon kevés funkciót lehet elérni
Összegzés
Az eszközfarmok segítenek a tesztelőknek kiszabadulni a többeszközös UI/UX tesztelés nehézségeiből, sok időt takaríthatnak meg, ezáltal csökkenhetnek a munkaerőköltségek is.
Arra is kiváló lehetőséget nyújt, ha egyetlen fejlesztőként szeretnénk tesztelni alkalmazásunkat néhány eszközön, hiszen kipróbálhatjuk a fenti, a teljesség igénye nélkül említett ingyenes megoldások bármelyikét.
Ha potenciálisan nagy célközönséggel rendelkező alkalmazáson dolgozunk, akkor olyan eszközfarmot ajánlott választanunk, ami alaposan teszteli az alkalmazást a lehető legtöbb eszközkonfiguráción úgy, mint az AWS Device Farm, Kobiton stb.
Ha olyan szolgáltatást keresünk, amely maximális lefedettséggel rendelkezik, akkor az értékelések alapján a Xamarin Test Cloudot javasoljuk.
Vége
Még mindig nincsen vége, becsaptalak!
A következő részben megnézünk néhány farmot, mennyire jól lehet rajtuk tesztelni (vagy mennyire nem jól.. 🙂 )
Jó tesztet!