"Waar mobiele webtests vaak een uitbreiding zijn van je reguliere teststrategie, vereist het testen van apps op mobiele devices een gespecialiseerde en meer device-georiënteerde aanpak."
Automatisch testen van mobiele devices: wat heb je nodig om te kunnen beginnen?
Testautomatisering op mobiele devices lijkt op web automatisering, maar vraagt om een paar extra stappen. Waar je bij web testen vaak al uit de voeten kunt met een browser en Selenium, heb je voor het testen van mobiele devices een ander soort opstelling nodig. Dit heb je nodig:
- De applicatie zelf. Je hebt het installatiebestand van de app nodig (bijvoorbeeld een .apk voor Android of een .ipa voor iOS). Zorg ervoor dat je toegang hebt tot de juiste, meest recente versie van de app, vaak kan je dit opvragen bij de ontwikkelaar.
- Een testdevice. Dit kan een fysiek apparaat zijn, zoals een smartphone of – in mijn geval – een handscanner die via een USB-kabel met je computer wordt verbonden.
- Een server. De devices worden bediend via de Appium server. De server maakt het mogelijk om de testsoftware te verbinden met de devices waarop getest wordt.
- Een driver. Je hebt software nodig die automatische interactie met het apparaat mogelijk maakt. In het geval van Android gebruik je bijvoorbeeld UIAutomator als stuurprogramma om testacties op het device uit te voeren.
Testen op een fysieke device of emulator: wat kies je?
Emulators zijn softwarematige simulaties van mobiele apparaten op je computer. Ze bootsen het besturingssysteem en de hardware na, waardoor je verschillende devices en OS-versies kunt testen zonder fysieke apparaten. Ideaal voor snelle, schaalbare tests en integratie in CI/CD-pipelines.
"Emulators bieden veel flexibiliteit en schaalbaarheid, zeker in grotere of complexere testomgevingen. "
Voordelen van emulators:
- Geen fysieke apparaten nodig, dit bespaart ruimte en kosten.
- Snel schakelen tussen verschillende modellen en OS-versies.
- Simuleren van netwerkcondities (slechte wifi, geen verbinding, GPS-locaties, tijdzones).
- Automatisering in pipelines mogelijk zonder handmatige interventie.
Nadelen van emulators:
- Vereist veel rekenkracht van je computer.
- Vaak trager en minder betrouwbaar dan de echte devices.
- Hardware functies zoals camera, bluetooth of sensoren zijn moeilijk te simuleren.
- Bij specialistische devices (zoals handscanners) voldoen emulators vaak niet.
Fysieke apparaten zijn cruciaal als je wilt testen hoe de app écht functioneert in de praktijk, vooral bij hardware afhankelijke functies. Bij Medux testten we op exact dezelfde handscanners die ook in het magazijn gebruikt worden. Zo wisten we zeker dat onze tests realistisch waren en dat wat wij zien ook daadwerkelijk de gebruikerservaring weerspiegelt.
Wanneer kies je wat?
Gebruik een emulator als… | Gebruik een fysiek device als… |
|
|
|
|
|
|
|
|
In de praktijk zie je vaak een mix: dagelijks testen op emulators en periodieke validatie op echte devices voor maximale betrouwbaarheid.
Mobiel testen met Robot Framework en Appium
Je hebt een applicatie nodig die jouw teststappen uitvoert – net zoals Selenium dat doet voor browsers – en in de wereld van mobiele apps is dat Appium. Appium fungeert als een brug tussen je testcode en het mobiele apparaat (fysiek of virtueel). Het ondersteunt bijna elke programmeertaal en werkt goed samen met Robot Framework, dat een uitgebreide AppiumLibrary biedt.
Via Appium – dat als server draait – geef je testinstructies door, bijvoorbeeld: “vind deze knop en klik erop”. Alleen: je kunt in een app niet zomaar rechtsklikken om te inspecteren wat je ziet, zoals in HTML. Daarom gebruik je de Appium Inspector: die laat je de structuur achter het scherm zien, opgebouwd in XML.
Die XML-structuur is je gids tijdens het testen. Net zoals je in een website via HTML kunt navigeren naar knoppen of tekstvelden, kun je dat in apps via XML. Maar mobiel testen is minder vergevingsgezind. Teruggaan? Dat moet je expliciet in je script zetten. Direct naar een andere ‘pagina’? Vergeet het maar.
Met eenvoudige keywords zoals Open Application, Click Element en Wait Until Page Contains bouw je intuïtieve tests. Ook typische mobiele acties als swipe, scroll en long press zijn goed te automatiseren. Soms loop je tegen beperkingen aan, bijvoorbeeld bij het bedienen van externe apps (zoals de camera). Dan kun je aanvullende tools als Android Debug Bridge (ADB) gebruiken, al vraagt dat wel extra technische kennis.
Het belangrijkste is echter de samenwerking met je developers en inzicht in het type app en device waarop je test. Met die basis en Appium als tussenlaag kun je met Robot Framework effectief, betrouwbaar en schaalbaar mobiele apps automatiseren.
"Mobiel testen in een logistieke omgeving met gespecialiseerde devices, zoals handscanners, is misschien complex, maar zeker niet onmogelijk."
Conclusie
Goed mobiel testen vraagt meer dan alleen de juiste tools. Zorg voor inzicht in het type app dat je test (native of web), de devices waarop je test (fysiek of virtueel), en werk nauw samen met developers om de testbaarheid van de app te vergroten. Met die basis – en Appium als tussenlaag – kun je met Robot Framework effectief en schaalbaar mobiele apps testen.
Heb je vragen over dit blogartikel of het onderwerp? Aarzel niet om contact met Bartosz op te nemen.