9 aandachtspunten bij selecteren testtool

Het selecteren van een tool voor het geautomatiseerd uitvoeren van testen is een belangrijke stap voordat je start met het automatiseren van de testen. Je gaat namelijk alleen profijt hebben van geautomatiseerd testen als de tool de noodzakelijke functionaliteiten ondersteunt.

Er spelen meerdere factoren een rol bij de tool selectie. 9 daarvan zullen we behandelen in dit artikel.

Wanneer is geautomatiseerd testen zinvol?

selectie test toolGeautomatiseerd testen is niet de heilige graal voor de testuitvoering. Het kan zinvol zijn als een van de volgende situaties van toepassing is:

  • Er zijn veel testgevallen die vaak opnieuw uitgevoerd moeten worden
  • Er zullen meerdere versie en releases worden ontwikkeld en daarbij zullen regelmatig regressietesten worden uitgevoerd.
  • Er moeten testen uitgevoerd worden met grote hoeveelheden gebruikers
  • De gebruikersinterface is al redelijk stabiel

9 aandachtspunten bij het selecteren van een tool

Beschikbare budget voor aanschaf en implementatie.

Dit is in eerste instantie het belangrijkste punt. Wanneer er geen budget is voor de aanschaf zal de keuze zich beperken tot open source tools. Is er een beperkt budget dan zullen er commerciële tools direct afvallen omdat ze te duur zijn. Ook voor de opleiding en implementatie zal er budget moeten zijn.

Prijsstelling van de tool

Bij de prijsstelling spelen niet alleen de licentiekosten een rol, maar ook de prijs voor eventuele add-ons, support, opleiding en onderhoud. Om een goed kostenplaatje te kunnen maken moet er dus inzicht zijn in deze verschillende kosten. Er worden verschillende soorten licenties gebruikt in de markt, zoals: node-locked, concurrent floating, runtime of open source. In het artikel “licentie types” hebben we deze uitgelegd.

Type applicatie die ondersteunt moeten worden

Hierbij zie je het grote verschil tussen open source en commerciële tools. Commerciële tools, zoals Test Complete, Ranorex of Test Studio, ondersteunen zowel Mobiele, Desktop en Browser gebaseerde applicaties. Open source tools zijn vaak alleen geschikt voor een van de drie types. Niet alleen de type applicatie, maar ook de operating systemen en browsers die ondersteunt worden kunnen per tool verschillen.

De programmeertalen die moeten worden ondersteunt

Het leren werken met een nieuwe tool kost tijd. Het leren werken met de programmeertaal die door de tool wordt gebruikt kost ook tijd. Het selecteren van een tool die een programmeertaal gebruikt waarmee het team ervaring heeft is dan ook een pre. Wanneer de taal gelijk is aan de ontwikkeltaal van de applicatie zelf, dan kun je ook gebruik maken van de kennis en ervaring van de ontwikkelaars.
Selenium WebDriver ondersteunt meerdere talen zoals, C#, Java, Python, Ruby en JavaScript. TestComplete ondersteunt ook meerdere talen zoals VBScript, JScript, Delphi Script, C++Script en C#Script. Het is dus zaak om goed te onderzoeken wat de mogelijkheden zijn.

De technologie van de te testen applicatie

Een belangrijk aspect bij het kiezen van een tool is de technologie die wordt ondersteunt. De tool moet uiteraard wel de technologie ondersteunen die door de applicatie wordt gebruikt. Het is van belang om hierbij de ontwikkelaars te betrekken. Wanneer zij bijvoorbeeld ontwikkelen in HTML 5 dan zijn er nog niet veel tools die dit ondersteunen.

Ondersteuning testautomatisering framework

Wanneer de tool een onderdeel moet worden van een testautomatisering framework waarbinnen bijvoorbeeld Data-Driven of Keyword-Driven gewerkt moet kunnen worden, dan moet de te selecteren tool dit wel ondersteunen. Het is dan van belang dat de tool kan werken met verschillende type externe bestanden. Denk hierbij aan een Excel bestand, TXT bestand, CSV bestand, XML bestand, SQL tabellen of een database.

Integratie met andere onderdelen van de testautomatisering architectuur

Wanneer de te selecteren tool onderdeel wordt van een te realiseren testautomatisering architectuur dan moet het mogelijk zijn om te kunnen koppelen met andere onderdelen zoals testcase, testmanagement en issue tracking tools.

Technische aandachtspunten

Er is een aantal technische aspecten die meegenomen kunnen worden.

  • Record & Playback ondersteuning
    Het gebruiken van record & playback voor geautomatiseerd testen is niet echt aan te raden in verband met onderhoudbaarheid. Toch is het handig voor het leren werken met een tool dat dit wordt ondersteunt.
  • Verschillende manieren van objectherkenning en object mapping
    Er moeten verschillende manieren mogelijk zijn om een object te selecteren. Sommige objecten zijn namelijk moeilijk te herkennen. Verschillende selectie mogelijkheden zijn dan handig. Selenium ondersteunt bijvoorbeeld het selecteren van objecten id, name, class, link test, XPATH, CSS selector and JavaScript.
    Daarnaast is het van belang om de te selecteren objecten op te kunnen nemen in een repository. Dit vergemakkelijkt de onderhoudbaarheid.
  • Verschillende manieren om expected results te controleren
    Bij de testuitvoering spelen de resultaatverwachtingen een essentiële rol. Het geautomatiseerd kunnen controleren van de resultaten moet op verschillende manieren mogelijk zijn. Denk hierbij aan het vergelijken met een Bitmap, XML bestand, TXT bestand, etc.
  • Afhandeling herstel scenario’s
    Wanneer er tijdens de testuitvoering testgevallen een onjuist of onverwacht resultaat geven en je wilt dat de testuitvoering wordt voortgezet dan is het van belang dat de tool dit ondersteunt. Uiteindelijk wil je de tests ‘s nachts laten draaien en de volgende morgen in een overzicht kunnen zien welke testgevallen wel / niet zijn geslaagd.
    Tip! Zorg er hierbij wel voor dat de testgevallen niet afhankelijk van elkaar zijn. Met andere woorden: dat testgeval x niet verder gaat met de resultaten van testgeval y.

Aandachtspunten bij evaluatie tijdens selectieproces

  • Is het mogelijk om een gratis trial versie te gebruiken en bevat deze trial versie alle functionaliteiten.
  • Is de huidige versie van de tool stabiel. Is er vanuit de leverancier voldoende ondersteuning via een helpdesk, online help of een gebruikershandleiding. Dit geldt alleen voor betaalde tools.
  • Zijn er reviews beschikbaar van andere gebruikers
  • Verzorgt de leverancier een initiële training

Conclusie

Realiseer je dat er geen goede of slechte tools zijn. Het is afhankelijk van de requirements en type te testen applicatie.

Selenium is bijvoorbeeld een populaire tool. Alleen heb je er niets aan als je een desktop applicatie gaat testen. Het is dus belangrijk om te technische kant van de te testen applicatie te kennen. Betrek daarbij de ontwikkelaars.

Besteed voldoende tijd aan de selectie, zodat je later niet voor verrassingen komt te staan en uiteindelijk een falend geautomatiseerd testproces hebt.

Ook interessant?

Licentie types test tools

Licentie types test tools

Wanneer je bij de test tools wel eens hebt gekeken naar de prijsstelling dan zul je gezien hebben dat er ...
Generieke Testautomatiserings Architectuur

Testautomatisering versus geautomatiseerd testen

Wanneer er binnen het vakgebied testen wordt gesproken over automatisering, dan worden er regelmatig twee soorten automatisering door elkaar gebruikt ...
Test tools

Soorten testtools

Soorten test tools voor testuitvoering Een testtool is een hulpmiddel dat gebruikt kan worden bij het uitvoeren van testen. Omdat ...
Issue tracking tools

Issue tracking tools

Issue tracking (bevindingenbeheer) is het managen van de bevindingen door de gehele levenscyclus van een bevinding. Helaas wordt er in ...
Blijf op de hoogte van onze nieuwste ontwikkelingen, schrijf je hier in voor de nieuwsbrief!