Karamellipintaisimmissa mielikuvissa testiautomaatio mielletään kaiken pelastavaksi laadunvarmistusmenetelmäksi, jonka käyttöönoton jälkeen testaavan ihmisen rooli väistyy taka-alalle koska asiat hoituvat vastedes nappia painamalla.

Näin ei ole ainakaan automatisoidussa mobiilitestauksessa.

Lyödään nyt vielä sekin fakta pöytään, että testiautomaatioon ryhtyminen, eli työkalujen evaluointi, ympäristön konfigurointi, testitapausten scriptaaminen testattavaan järjestelmään (iOS ja Android- sovelluksille erikseen), scriptien laadunvarmistus ja niiden ylläpito, raportointiasiat, mahdolliset integraatiot muihin järjestelmiin, ja tusinan verran muuta bitinnypläystä vaativat kuulkaas aikaa, paneutumista ja fyrkkaa.

Etusormi, joka testiautomaation napin painamisen jälkeen muodostaa peukalon kanssa ympyrän, sisältää känsän ja pureskellun kynnen.

Mutta kaiken tämän jälkeen kun testit vihdosta viimein pyörivät tuottaen asiallisia luotettavia tuloksia ja vapauttaen pikkuhiljaa ihmisten käsiä olennaisen tekemisen pariin, voidaan varovaisesti todeta että testiautomaatiohan on ihan jees juttu!

Se siitä teoriasta. Mennään asiaan.

Olen evaluoinut useampiakin testiautomaatiotyökaluja ja pilvipalveluita mobiilitestauksen apuvälineinä.
Robot Framework on osoittautunut toimivaksi työkaluksi myös mobiiliratkaisujen automatisointitarpeisiin. Tietenkin keyword -pohjainen lähestymistapa miellyttää, mutta muita etuja ovat mm. Robot Frameworkin muovautuvuus eri käyttötarkoituksiin asennettavien libraryjen ja räätälöitävien keywordien vuoksi.

Appium on mukava härpäke, eli framework, sillä se tulee juttuun sekä iOS että Android -järjestelmien kanssa. Lisäetuna tuki lukuisille eri scriptikielille (Python, Ruby, C#, yms), puhumattakaan kaupallisista pilvipalveluista jotka ovat Appiumin ottaneet avosylin vastaan!

Robot Frameworkiin on ladattavissa AppiumLibrary, jonka avulla natiivisovellusten automatisointi on lasten leikkiä. Tulee vain asentaa Appium, Robot Framework, AppiumLibrary, testattavan kohdejärjestelmän SDK, konfiguroida setup, kirjoittaa ja konfiguroida scriptit, ja ja ja….eli onhan noita työvaiheita.

Demo!

Taannoin rakensimme asiakkaallemme Camiloc Oy:lle simppelin automaatioratkaisun, jossa Robot Framework + Appium -yhdistelmällä laitoimme kaksi Briefr Messaging chat- sovellusta rupattelemaan keskenään eri laitteilla.

Ratkaisu tehtiin ensin Mac -ympäristössä, jossa chattikavereina oli iOS -laite (iPod) ja Android puhelin, Myöhemmin sama keissi konffattiin Linuxille kahden Android -laitteen (Nexus5 ja Nexus7) kera, josta alla olevassa videoclipissä pieni maistiainen: