Websites en mobiele applicaties worden tegenwoordig door veel gebruikers met een breed scala aan browsers en apparaten geopend. Daarnaast hebben deze browsers vaak verschillende versies, elk met nieuwe functies en wijzigingen. Al deze versies kunnen ervoor zorgen dat er problemen ontstaan in websites en apps die tot voorheen prima functioneerden. Een tool die hierbij kan helpen is cross-browser/cross-platform testing.

Geschreven door Bart Wesselink, Head of Development

Tegenwoordig bevatten applicaties veelal automatische testen. Deze testen controleren of een deel van de code nog werkt zoals behoren. Wat er precies getest wordt, hangt af van het type test. Dat kunnen bijvoorbeeld de volgende typen zijn:

  • Unit test: bij deze test wordt een heel klein deel van de code getest, en wordt getest wat de output is op basis van verschillende inputs.
  • Integration test: een integration test wordt gebruikt om meerdere modules samen te testen, zonder dat het achterliggende design bekend hoeft te zijn.
  • End-to-end test: met dit laatste type wordt de gehele flow van een applicatie getest, waarbij gekeken wordt naar de werking van de functionaliteit.

Automatisch testen

Bij het uitvoeren van al deze type testen biedt BrowserStack ondersteuning, echter zullen we ons in dit artikel met name focussen op de laatste: end-to-end tests. Bij deze end-to-end tests wordt van tevoren een pad opgesteld hoe er door de applicatie gelopen moet worden. Een voorbeeld pad ziet er als volgt uit:

• Open de applicatie
• Druk op de ‘Inloggen’-knop
• Vul een test gebruikersnaam & wachtwoord in
• Druk op ‘Verzenden’
• Resultaat: gebruiker is ingelogd en er zijn geen fouten
opgetreden

Zoals te zien is, zit bij elke test een verwacht resultaat. Dit resultaat is afhankelijk van het scenario dat getest wordt en bepaalt uiteindelijk of een test wel of geen groen vinkje krijgt en dus geslaagd is.

Met een tool als Browserstack is het mogelijk om deze (parallel) testen uit te voeren op verschillende browsers, (mobiele) besturingssystemen en versies daarvan. Zodra een test dan is afgerond op een specifieke configuratie worden de resultaten geüpload en kunnen deze door ontwikkelaars en testers worden ingezien via bijvoorbeeld het continuous integration systeem dat gebruikt wordt.

Handmatig testen

Naast automatische testen kan cross-browser testing ook gebruikt worden voor handmatige testen. Zo kan er bijvoorbeeld gecontroleerd worden of een app werkt op het iOS-platform, terwijl de tester zelf niet over een iOS-toestel beschikt. Apps en websites kunnen geopend worden in de omgeving van de cross-browser tool, zonder dat deze beschikbaar hoeven te zijn in bijvoorbeeld een App Store.

Ook kan cross-browser tooling helpen met het opsporen van bugs. Door de configuratie van een gebruiker na te bootsen met bijvoorbeeld Browserstack, is het makkelijker om een bug die gemeld is door de gebruiker te melden. Het is zelfs mogelijk om een brug op te zetten tussen de lokale ontwikkelomgeving van de ontwikkelaar en Browserstack om zo direct te kunnen controleren of een bug opgelost is of niet.

Het gebruik van cross-browser testing draagt bij aan het waarborgen van de kwaliteit van zowel webapplicaties alsmede mobiele apps. Benieuwd hoe we deze tooling bij Recognize inzetten of wat het voor jou kan betekenen?Neem dan contact op met één van onze collega’s!

LET’S
CONNECT!

Benieuwd naar wat we voor jou kunnen betekenen? Of kun je iets voor ons betekenen? Dan horen we graag van je! Bel of mail gerust. We komen graag langs om kennis te maken. En natuurlijk staan onze deuren op de zevende verdieping van de Javatoren in Almelo ook altijd voor je open.