Articles

Comparing Mobile Automation Testing Tools: Appium, TestComplete, UI Automator, SeeTest, Robotium, XCUITest en meer

INHOUD

Leestijd: 14 minuten

Mobiel testen is complexer dan webtesten. Terwijl de laatste betrekking heeft op verschillende browsers en een verscheidenheid aan versies, richt mobiel testen zich op Android en iOS versies en mobiele schermresoluties. Naast stock Android hebben QA-engineers te maken met aangepaste UI’s. De meeste toestelfabrikanten voegen deze toe bovenop standaard Android om extra functies en een meer onderscheidend ontwerp te bieden. Bekende voorbeelden zijn OnePlus’ OxygenOS en Samsung’s One UI.

Met dit artikel willen we het leven makkelijker maken door speciale mobiele automatiseringstesttools te vergelijken. We hebben de aanbevelingen opgenomen van in-house en externe experts die hun mening geven over mobiele automatiseringstools.

Hoe test je mobiele applicaties

Dus, hoe gebeurt mobiel testen? QA-engineers gebruiken mobiele automatiseringstesttools om interacties van testcodes met de betreffende applicatie mogelijk te maken. De vraag is hoe mobiele automatiseringstests moeten worden uitgevoerd. Er zijn drie mogelijkheden.

Door middel van live lokale mobiele apparaten. Met echte USB-apparaten kunnen QA’s de werking van een app testen vanuit het perspectief van de eindgebruiker. Ze kunnen dit versnellen door tests parallel uit te voeren op meerdere Android-toestellen. Hoewel het nog steeds vrij tijdrovend is vanwege de vereiste van handmatige infrastructuurinstellingen, leveren dergelijke tests de meest nauwkeurige resultaten op. Als alternatief kunt u gebruikmaken van cloud-testdiensten.

Echte apparaatcloud gebruiken. Om de dekking van apparaten uit te breiden, voeren QA’s tests uit in een testomgeving op afstand – device farm oftewel apparaatwolk. Apparaatparken met vooraf geïnstalleerde besturingssystemen en browsers bieden testers toegang tot fysieke apparaten met meerdere versies. Testers hebben een dashboard waar ze alle aangesloten apparaten kunnen beheren. Sauce Labs en BrowserStack zijn veelgebruikte device clouds.

Via Android emulator / iOS simulator. QA’s testen mobiele apps ook via software die op hun desktop een mobiel apparaat nabootst. Met name de Android-emulator bootst zowel de software- als hardwareomgeving van het doelapparaat na, terwijl de iOS-simulator – alleen de mobiele software. Dat is waarom je een originele Apple computer nodig hebt om te testen. Als een van de belangrijkste voordelen van emulators noemt Alexander Kot, mobile automation engineer bij AltexSoft, de mogelijkheid om zeer snel tussen apparaten te schakelen. Anastasiya Nalyhach, een testautomatiseringsingenieur bij EPAM Systems, voegt hieraan toe dat emulators haar in staat stellen om snel lokale tests op een pc te starten wanneer er geen echt apparaat beschikbaar is. Emulators zijn echter niet zo betrouwbaar als echte apparaten.

Android-emulator in Android Studio

Android-emulator in Android Studio

Android-emulator in Android Studio

Om te begrijpen hoe al deze componenten samen het testproces vormen, moeten we eerst begrijpen hoe mobile automation testing in zijn geheel werkt.

Hoe mobile automation testing werkt

Om mobiele apparaten te ontwikkelen en te testen worden de volgende IDE’s gebruikt: Android Studio en Apple Xcode. Deze IDE’s beschikken over alle benodigde instrumenten om met code te werken, waaronder code debuggers (bijv. Android Debug Bridge), emulators en simulators.

Een interface die communicatie tussen een mobiel apparaat en uw computer mogelijk maakt, wordt een mobiele driver genoemd. De officiële Android drivers zijn UI Automator en Espresso. Beide drivers zijn ontwikkeld door Google en zijn opgenomen in de goed gedocumenteerde Android Testing Support Library. Daarnaast zijn er drivers van derden zoals Robotium en Selendroid (Selenium voor Android). Voor iOS wordt het XCUITest stuurprogramma meegeleverd met Xcode.

Als je te maken hebt met een mobiele applicatie die zowel op iOS als op Android beschikbaar is, zal het schrijven van aparte tests voor elk OS enige tijd in beslag nemen. Je kunt hergebruik van code mogelijk maken door gebruik te maken van een cross-platform tool. Het resultaat is dat je maar één keer code hoeft te schrijven en dat die code compatibel is met beide OS. Het populairste voorbeeld van een cross-platform tool voor mobiel testen is Appium.

Drie manieren om een tool voor mobiele automatisering te gebruiken

Drie manieren om een tool voor mobiele automatisering te gebruiken tool

Drie manieren om een mobile automation testing tool te gebruiken

Laten we het hele proces eens samenvatten met Appium als voorbeeld. Zodra de code is ontwikkeld, stuurt de Appium client commando’s naar de Appium server via zijn API. Appium converteert op zijn beurt de commando’s naar het formaat dat wordt geaccepteerd door het native test framework van het corresponderende platform (UIAutomator, XCUITest) en als gevolg daarvan worden de initiële commando’s uitgevoerd in de geteste applicatie in een simulator of emulator. Als alternatief kunt u gebruik maken van een device cloud zoals Sauce Labs die alle benodigde apparaten voor u heeft voorgeïnstalleerd. U hoeft dus alleen maar verbinding te maken met het cloudplatform. In het geval dat u besluit om echte apparaten te houden, zult u deze zelf moeten aansluiten en configureren.

Wanneer mobiele tests automatiseren

Vaak worden mobiele tests handmatig uitgevoerd, vanwege de complexiteit van het automatiseren van dit proces. De touchscreen-acties zoals scrollen en trekken zijn vrij lastig te automatiseren. Laten we een onderscheid maken tussen de gevallen waarin het redelijk is om mobiele tests te automatiseren en de gevallen waarin het verstandiger is om het bij handheld checks te houden.

Gelijk aan webtesten zijn er meerdere scenario’s voor geautomatiseerde app QA:

1. Langetermijnprojecten. Automatisering is de moeite waard op de lange termijn, als je van plan bent om de app voortdurend te ontwikkelen en te onderhouden.

2. Onderhoudscontroles. Als een mobiele applicatie via een API gegevens van een externe server betrekt, moet de synchronisatie van de app dagelijks worden gecontroleerd. Vaak vinden er veranderingen plaats aan de server kant die leiden tot verschillende crushes zoals het mislukken van het inloggen of het niet kunnen weergeven van bepaalde elementen op het scherm.

3. Rooktesten. Als we te maken hebben met een standalone app die geen gebruik maakt van externe resources, slaan we de vorige stap over en gaan we meteen over tot rooktesten. Deze worden voor de release uitgevoerd en zijn een oppervlakkige controle van de basisfuncties.

4. Regressietests. Dit is de meest grondige controle waarbij alle routinetests worden uitgevoerd die kunnen worden geautomatiseerd. Automatisering is vooral kosteneffectief bij grote regressievolumes.

5. Pijplijnen voor continue integratie. Aangezien continue integratie alleen draait om geautomatiseerde tests, is er hier geen andere optie.

Maar vergeet het handmatig testen niet. Het zal nauwkeuriger zijn in termen van onderbrekingen zoals inkomende teksten, oproepen, push-notificaties, enz. Dit omvat ook het testen van hoe de app presteert afhankelijk van het verschillende type internetverbinding (3G, LTE, enz.) en ook offline.

Het is dus belangrijk om zowel handmatig als geautomatiseerd mobiel te testen. Terwijl handmatige tests zich richten op verkennende of bruikbaarheidstests, zorgen geautomatiseerde tests voor sterk herhaalbare functionele tests. Voor meer details over handmatig vs. geautomatiseerd testen, bekijk ons speciale artikel.

Verder geven we een overzicht van de tools die je helpen om het handmatig testen van je app om te zetten in een geautomatiseerde test. Om meer te leren over algemene geautomatiseerde testtools, lees ons artikel over dat onderwerp. Hier concentreren we ons op mobiel testen, hoewel sommige spelers zullen blijven omdat ze zowel web- als mobiel testen ondersteunen.

Android en iOS open-source testtools

Android en iOS open-source testtools

Android mobiele automatiseringstools

Er zijn meerdere populaire tools voor het schrijven van geautomatiseerde tests voor Android en het emuleren van gebruikersgedrag in de applicatie. Het eerste wat je moet controleren zijn de tools die Google zelf heeft gebouwd voor zijn besturingssysteem, UI Automator en Espresso. Als u gewend bent aan Selenium in web omgevingen, is er een mobiele versie van – Selendroid. Je kunt ook kijken naar het populaire en eenvoudig te gebruiken Robotium, dat wordt ondersteund door een grote, open source community.

Dus, we beginnen met een vergelijking van twee native Android testtools – UI Automator en Espresso.

Espresso en UI Automator: een tandem voor native Android testen

Initieel ontworpen voor ontwikkelaars, vereist Espresso toegang tot de broncode. Dus, het biedt white-box testen in tegenstelling tot UI Automator. Het ondersteunt Android applicaties vanaf versie 2.3. UI Automator werd later uitgebracht, dus het onderhoudt Android 4.3+.

Er is een reden waarom Google ze beide houdt. Elk framework heeft een aantal hiaten die de andere vult. Terwijl Espresso alleen kan werken binnen onze test applicatie context, is UI Automator in staat om de interacties van het onderwerp applicatie met andere apps te controleren. De raamwerken zijn niet uitwisselbaar, maar ze vullen elkaar aan. Het is dus beter om beide frameworks te gebruiken voor het testen van je mobiele app.

Espresso en UI Automator pro’s:

  • Snel testen door code synchronisatie (Espresso is sneller)
  • Betrouwbaarheid: onderhouden door Google zelf. Als er iets kapot gaat, wordt het vrijwel direct gerepareerd
  • Ingebouwde testrecorder (alleen voor Espresso)
  • Een actieve community waar ontwikkelaars voortdurend bijdragen en vragen beantwoorden

Espresso en UI Automator nadelen:

  • Beperkte taalondersteuning: Java en Kotlin.
  • Aangepaste controles vereisen goede programmeervaardigheden en een diep begrip van hoe Android werkt.

UI Automator Viewer

UI Automator Viewer

UI Automator Viewer, Bron: Arseny Batyrov

Zowel Selendroid als Robotium zijn ontwikkeld vóór de officiële drivers. Ze worden echter niet zo goed ondersteund als Google’s tools.

Selendroid: Selenium tool voor Android compatibiliteitstesten

Selendroid is een mobiele automatiseringstool van Selenium, uitsluitend gericht op Android. Maar als je ios-driver – een Selenium WebDriver API – samen met Selendroid gebruikt, kun je ook iOS applicaties testen. Geschreven op de Selenium WebDriver client API, zijn Selendroid tests volledig geïntegreerd met de huidige Selenium frameworks. Met behulp van Selenium Inspector, een test case development tool, monitort Selendroid de huidige staat van de UI van de app.

Selendroid pros:

  • De hot-plugging functie maakt het mogelijk om apparaten te ontkoppelen zonder de test te onderbreken. Uiteindelijk verhoogt het het aantal apparaten dat gelijktijdig kan worden getest.
  • Het heeft een hoge compatibiliteit met JSON Wire Protocol en Selenium 3 Ready.
  • Backward compatibiliteit. Zo kan het Android API 10 (versie 2.3.3) tot en met API 19 (versie 4.4) ondersteunen.
  • Er zijn geen app-aanpassingen nodig om het te automatiseren.
  • Er is een ingebouwde Android-driver WebView app.

Selendroid nadelen:

  • Er is geen mogelijkheid om het testen van activiteiten buiten de app te automatiseren, zoals camera, kaarten, enz.
  • Slow: Het is moeilijk te gebruiken op sommige machines met minder dan 4GB RAM.

Robotium: black-box UI testing library voor Android applicaties

Robotium, een van de eerste geautomatiseerde testtools voor Android, wordt veelvuldig gebruikt. Omdat het wordt gebruikt voor black-box testen, is er geen behoefte aan aanvullende gegevens over de structuur van de app of uitgevoerde klassen. Het enige dat Robotium moet weten is de naam van de fundamentele klasse en hoe er verbinding mee te maken. Java is de voorkeurstaal voor het samenstellen van Robotium tests.

Robotium pro’s.

  • Het maakt het mogelijk om functie-, framework- en gebruikersacceptatietests samen te stellen.
  • Het heeft een grote gemeenschap: Er zijn veel open-source ontwikkelaars die bijdragen om meer functies in volgende releases te introduceren.

We vroegen Myhailo Skrypchuk, ontwikkelaar bij Brandnic, over hun gebruik van Robotium om een bedrijfsnaam generator app te testen: “We gebruiken de tool bij het testen van de werking om te evalueren of de bewerking is voltooid met behulp van de juiste gegevensstroom. Ook bij beveiligingstesten – we vinden en elimineren mazen en kwetsbaarheden, lanceren verschillende mock cyberattacks. Bij performance testing onderzoeken we de app op geheugenvereisten en de snelheid waarmee de taak wordt voltooid.”

Robotium heeft de volgende nadelen:

  • Gebonden aan één app-proces, vergelijkbaar met Espresso.

“Als je applicatie een andere applicatie aanroept – kan Robotium dat niet zien en daar geen actie uitvoeren,” voegt Myhailo toe.

  • Geen mogelijkheid om een smartphone of tablet te vergrendelen/ontgrendelen.
  • Geen opname- en afspeelfuncties
  • Geen mogelijkheid om screenshots te maken.

iOS mobiele automatiseringstools

Als je je bezighoudt met het testen van iPhone-apps, kijk dan eens naar de opties die je hebt. Het komt allemaal neer op XCUITest – de officiële UI-testtool van Apple. Dat gezegd hebbende, biedt Google een mooi alternatief – EarlGrey, die je misschien meer geschikt vindt voor je behoeften.

XCUITest: native methoden om met iOS UI te werken

XCUITest draait binnen de Xcode-omgeving en de tests moeten worden geschreven in Swift of Objective-C. De versie-ondersteuning begint met iOS 9.

XCUITest pro’s:

  • Gedistribueerde parallelle testloop
  • Ingebouwde testrecorder voor eenvoudige tests, UI-elementen en hun eigenschappen

XCUITest nadelen:

  • Apple is trager dan Google als het gaat om het reageren op bugs
  • Weakke documentatie: Het bevat niet een beschrijving van alle methoden en hoe ze te gebruiken.
  • Kleine gemeenschap: Je zult het moeilijk vinden om een antwoord op je vraag te krijgen.
  • Testloopsnelheden zijn traag in vergelijking met Android-tests.
  • Frameworkupdates zijn zeldzaam.
  • Out-of-the-box testen alleen op simulators, vereist extra hulpprogramma’s om met echte apparaten te werken. Een van hen is Facebook WebDriverAgent (WDA). Draaiend op een simulator of een echt apparaat, geeft WDA commando’s via API door aan XCUITest.

EarlGrey: Google’s antwoord op XCUITest

Ontwikkeld door Google in 2016, lijkt EarlGrey erg op Espresso. Google zelf gebruikt de tool voor het functioneel testen van native iOS apps zoals YouTube, Google Calendar, Google Photos, Google Translate, etc. Je kunt Earlgrey handmatig of met behulp van een dependecy manager aan je Xcode project toevoegen .

In tegenstelling tot XCUITest deelt dit UI automation framework hetzelfde proces met de app: Testscripts wachten op specifieke UI-events voordat ze direct een interactie starten met de UI van de applicatie. Zo kan de test het gedeelde geheugen beïnvloeden en het runtime gedrag van de app veranderen. Hoewel EarlGrey automatisch synchroniseert met de UI en netwerk requests, is het nog steeds mogelijk om aangepaste timings te implementeren.

Earl Grey voordelen ten opzichte van XCUITest:

  • Brengt Espresso’s synchronisatie functies naar iOS testen
  • Real devices support

Earl Grey nadelen:

  • Anonieme statistische rapporten terug naar Google
  • Alleen een enkele app testen

Cross-platform mobile automation testing tools

Mobiele testtools die voor beide OS’en werken, besparen je een hoop tijd en moeite. Hoewel het gemakkelijk is om te verdwalen in de poel van keuzes, hebben we de top vijf – zowel gratis als gelicentieerd – frameworks geselecteerd die je kunnen helpen bij het ontwikkelen van mobiele cross-platform geautomatiseerde tests. Appium is het eerste waar je aan denkt. Maar het is niet zo eenvoudig om het uit te vinden, vooral als je Selenium niet bij je voornaam kent. Soms is het beter om extra te betalen voor een script-vrije automatiseerder. We zullen beide opties bekijken aan de hand van de tools op deze lijst.

Vergelijking van tools voor platformonafhankelijke mobiele automatiseringstests

Vergelijking van tools voor platformonafhankelijke mobiele automatiseringstests

Appium: een veelzijdig framework voor mobiele UI-tests

Als je Selenium goed beheerst, is Appium een makkie voor je. Het is in feite een Selenium WebDriver ontworpen voor het testen van mobiele apparaten. De kernfunctie van de Appium-server is het ontvangen van testverzoeken in een JSON-formaat en deze om te zetten in commando’s die verder kunnen worden geaccepteerd door de native testframeworks.

Hoe Appium-server werkt

Hoe Appium-server werkt

Hoe Appium-server werkt

Appium- en WebDriver-gebaseerde tests kunnen worden uitgevoerd met behulp van het WebDriverIO-testautomatiseringsraamwerk.

Het is WebDriver bindings voor Node.js. WDIO heeft zijn eigen test runner en is gemakkelijk te configureren. De command-line interface wordt geleverd met een mooie configuratie tool die helpt bij het maken van het config bestand in minder dan een minuut. Het geeft ook een overzicht van alle beschikbare third-party packages zoals framework adaptaties, reporters en services, en kan deze installeren.

Appium pros. Appium is veruit het meest universele mobiele UI-testframework.

  • Het ondersteunt automatisering op verschillende platforms: iOS mobile, Android mobile en Windows desktop.
  • De tool automatiseert alle soorten applicaties: native, mobile web, en hybride.
  • Appium is compatibel met alle populaire programmeertalen: Ruby, Python, Java, JavaScript, PHP, C#, en RobotFramework. Met clients geschreven in elk van deze talen, zijn er geen grenzen in termen van test runners en test frameworks. Het is eigenlijk inherent aan de Appium-filosofie – leg geen beperkingen op aan je testomgeving, zodat je die kunt beheren zoals jij dat wilt.
  • In tegenstelling tot andere automatiseringstools biedt Appium een stabiele, op WebDriver gebaseerde interface, waardoor je tests gemakkelijk blijven werken, ondanks eventuele upgrades.

Exemplaar van Appium-implementatie voor Android

Exemplaar van Appium-implementatie voor Android

Exemplaar van Appium-implementatie voor Android, Bron: Thomas Hansson

Exemplaar van Appium-implementatie voor iOS

Exemplaar van Appium-implementatie voor iOS, Bron: Thomas Hansson

Appium tegens:

  • Anastasiya Nalyhach merkt op dat Appium geen directe interactie heeft met een app, maar het HTTP-protocol gebruikt om commando’s te versturen. Alexander Kot voegt daaraan toe: “Het uitvoeren van commando’s duurt even vanwege een lange interactieketen onder de motorkap van Appium: Na het starten van een apparaat en het aanmaken van een sessie, gaat Appium verder met het tot stand brengen van een verbinding met de WebDriverAgent server. Pas daarna communiceert de WebDriverAgent-server met het native testframework van Apple om opdrachten op het apparaat uit te voeren.”
  • Zonder toegang tot de broncode zijn er problemen met het wijzigen van de applicatiestatus. Bovendien staat Appium niet toe om het back-end gedeelte te mocken terwijl de UI wordt geverifieerd. Zorg uiteindelijk voor krachtige hardware, want Appium gebruikt veel resources.

Calabash: Behavior Driven Development test framework

Als Xamarin je dichter aan het hart ligt, ga dan voor Calabash. In 2017 stopte Xamarin met de ondersteuning van Calabash, en met de hulp van de community veranderde Calabash in een open-source tool. Er zijn bibliotheken voor elk platform: Calabash iOS en Calabash Android.

Calabash zorgt ervoor dat een applicatie uit de juiste features, scenario’s en stapdefinities bestaat en of het met de juiste inputs draait.

Calabash pros:

  • Georiënteerd op BDD, voert Calabash ontwikkelingstesten uit op basis van de werking van de applicatie.
  • In tegenstelling tot tool-agnostische Appium, is Calabash nauw gekoppeld aan gedragsgestuurde Cucumber, die wordt gebruikt om testscenario’s in eenvoudige taal te definiëren. Dit maakt het begrijpelijk, zelfs voor niet-technische teamleden.

Calabash nadelen:

  • Calabash maakt interacties met de app alleen mogelijk voor een Ruby-gebaseerd testframework.
  • Er zijn geen opname- en afspeelfuncties.
  • Testscripts debuggen en testonderhoud zijn de grootste problemen. Met de toename van het aantal te testen apparaten, wordt het moeilijk om testdatabestanden te onderhouden.
  • Het schrijven van automatiseringstestscripts voor Calabash vereist een ervaren en bedreven tester.

SeeTest: commercieel Continuous Testing platform

SeeTest van Experitest is de eerste commerciële cross-platform testtool op onze lijst. Het automate-plan van SeeTest, dat beschikbaar is met een proefperiode van 30 dagen, kost een gebruiker $199 per maand als een jaar vooruit wordt betaald of $249 per maand. Dus waarom betalen als er gratis tools zijn?

SeeTest pros:

  • Geïntegreerde Appium-mogelijkheden in een handige interface met functies als apparaatreflectie, testrecorder, objectspion en visuele feedback
  • Uitgebreide automatiseringsdekking inclusief barcode &-controle scannen, audiofuncties, GPS-simulatie en TouchID, of aangepaste elementen zoals schuifregelaars, pickers, tabellen, gebaren en elke complexe UI.
  • Individuele plug-ins om tests te ontwikkelen en uit te voeren op echte apparaten, rechtstreeks vanuit Eclipse of IntelliJ
  • Toegang tot 1000+ mobiele apparaten in de cloud en honderden tests parallel uit te voeren
  • Gedetailleerde testrapporten met screenshots, video’s en logbestanden.

SeeTest Reporter

SeeTest Reporter

SeeTest Reporter

Om kort te gaan, SeeTest past perfect in het CI-proces omdat het de mogelijkheid biedt prioriteiten te stellen, tests in te plannen en meerdere tests parallel te distribueren op de apparaten en OS’en die relevant zijn voor de specifieke build.

SeeTest nadelen. Er is altijd een maar. In het geval van SeeTest is dat de prijs, waardoor de tool niet geschikt is voor kleinschalige projecten. Bovendien is de tool niet open source, dus er is geen ruimte voor aanpassingen.

TestComplete: een eigen scriptvrije mobiele testmodule

TestComplete is een product van SmartBear, een leider op het gebied van software testautomatisering. Het biedt geautomatiseerde modules voor mobiel, desktop en web testen. Met TestComplete kunt u tests maken door ze op te nemen of door testcommando’s te bewerken in de panels en editors. U kunt de tests binnen het platform uitvoeren of exporteren om ze op externe applicaties uit te voeren.

TestComplete pros:

  • Er is een breed scala aan programmeertalen (bijv. JavaScript, Python, Jscript.)
  • Script-free record and replay tool maakt het mogelijk om multi-touch gebaren (vegen, knijpen, slepen, neerzetten of scrollen) op te nemen en weer af te spelen. Steve Pritchard, IT-consultant voor Anglo Liners, beweert dat dergelijke tests even grondig zijn als handmatige tests.

TestVolledige weergave van touchscreen-bewegingen

TestVolledige weergave van touch-schermgebaren

TestVoltooide weergave van touch-screen gebaren

  • Specifieke controlepunten controleren de toestand van de toepassing tijdens de testrun.
  • Automatische controles valideren belangrijke aspecten. Steve bevestigt het: “Dankzij de real-time informatie die de tool produceert, zijn we in staat om de voortgang en status van onze pagina’s vanaf elk apparaat tegelijkertijd te volgen.”
  • Er is een pre-integratie met SoapUI API testing tool.

TestComplete nadelen:

  • Deze oplossing is prijzig. Voor een mobiele module samen met het platform zelf, zal TestComplete u minimaal $2.299 per jaar in rekening brengen. Dat is slechts voor een enkel computerapparaat. Extensies zoals parallelle test executie, video test replays, AI-gestuurde visuele herkenning, automatische web audits voor performance, toegankelijkheid, en SEO hebben extra prijskaartjes. Ook brengt TestComplete apart kosten in rekening voor training en certificering. Met een aankoop krijgen TestComplete klanten toegang tot de Case Management Portal waar zij terecht kunnen voor ondersteuning. Voordat u verplichtingen aangaat kunt u het een maand uitproberen.
  • iOS testen met TestComplete vereist het installeren van hardware virtualisatie tools op uw Mac.

Tricentis Tosca: modelgebaseerde Mobile Engine 3.0 onder licentie

Als onderdeel van de Tricentis Tosca standaard installatie, moet de Tosca Mobile Engine 3.0 expliciet worden geselecteerd via de custom setup. In combinatie met Appium kunt u met Tricentis de kracht van Appium benutten zonder de technische complexiteit ervan te hoeven aanpakken. Bovendien maakt de Tosca Mobile Engine 3.0 gebruik van componenten van AndroidSDK en Xcode tools. Het komt geïntegreerd in apparaat clouds: Perfecto, Mobile Labs, Sauce Labs, en TestObject. Op deze manier bent u niet afhankelijk van testomgevingen, maar kunt u ze inschakelen wanneer de behoefte zich voordoet.

Tricentis Tosca pros. Vergelijkbaar met TestComplete, maakt Tricentis scriptloze testautomatisering mogelijk, samen met het handmatig schrijven van code, waardoor het eenvoudig in gebruik is. Enkele van de mogelijkheden van Tricentis waarvan u kunt profiteren zijn:

  • Synthetische testdata generatie,
  • Risk-based testing,
  • Test case design,
  • Distributed execution,
  • Service virtualisatie,
  • Test management en analytics,
  • DevOps en Application Life Cycle Management tool integraties
  • Geautomatiseerde implementatie en opstart met tests die automatisch worden gestart en geen handmatige interactie vereisen.

Tricentis Tosca nadelen: Tosca heeft aangepaste prijzen die aan de hoge kant zijn. Neem direct contact op om dit zelf uit te zoeken.

Uitdagingen van mobiel testen (in vergelijking met webtesten)

In termen van de inzet van functionaliteit, vertrouwt mobiele ontwikkeling op de bestaande web-featureset. Het maken van een ondersteunende app zou dus eenvoudiger moeten zijn. Maar dit heeft geen betrekking op het testproces. Hier begint het mobiele testen vanaf het begin, ongeacht hoe grondig het web testen werd uitgevoerd. Nu volgt een overzicht van de belangrijkste problemen die mobiel testen heeft in tegenstelling tot webtesten.

Device fragmentatie. Net als bij webtesten, waar we alleen te maken hebben met pc’s en laptops, omvat mobiel testen telefoons, tablets, smartwatches, enzovoort. Het omgaan met veel hardwarefabrikanten met verschillende schermgroottes en aangepaste UI’s bemoeilijkt dus het testproces.

Dubbel werk. Webtesten heeft maar met één omgeving te maken – een browser waar multi-versie niet zo’n grote rol speelt als bij mobiel testen. Als ze zowel Android als iOS mobiele besturingssystemen in de gaten houden, moeten testers twee soorten page object locators vinden en aparte tests uitvoeren voor vergelijkbare functies. Door twee infrastructuursets tegelijk te ondersteunen, moet QA klaar zijn voor eventuele push-updates die testbreuken kunnen veroorzaken.

Afgestemde apparaten. Zoals altijd vereist iOS een Apple-computer voor het schrijven van geautomatiseerde tests.

Testsnelheid. Webtests worden direct in de browser uitgevoerd. Dit in tegenstelling tot mobiel testen, waarbij de code een langere keten van acties doorloopt voordat deze op het doelapparaat kan worden uitgevoerd. Dit leidt tot vertragingen in het mobiele testproces.

Tooling en ondersteuning. In tegenstelling tot webautomatisering is de gemeenschap voor mobiele toepassingen minder volwassen en niet in staat bepaalde vragen te beantwoorden. De tooling is nog steeds in ontwikkeling.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *