Testautomatisering versus geautomatiseerd testen

Wanneer er binnen het vakgebied testen wordt gesproken over automatisering, dan worden er regelmatig twee soorten automatisering door elkaar gebruikt. Te weten “geautomatiseerd testen” en “testautomatisering”. Deze termen lijken veel op elkaar maar betekenen toch iets anders.

  • Geautomatiseerd testen
    Hier onder verstaan we het geautomatiseerd uitvoeren van testgevallen, testscripts en resultaat beoordeling.
  • Testautomatisering
    Bij testautomatisering gaat het niet alleen om de testuitvoering, maar het geautomatiseerd ondersteunen van alle verschillende processen binnen testen. Er zijn verschillende componenten betrokken bij testautomatisering zoals, de te testen applicatie, tools voor testuitvoering, testmanagement tools (voor bijvoorbeeld het bewaren van testcases en screenshots), testomgeving, test data, interfaces tussen de verschillende tools, functies, testscripts, resultaten etc. Hierbij is het belangrijk dat de verschillende componenten met elkaar kunnen communiceren.

Doelstellingen van testautomatisering kunnen onder andere zijn:

  • Testen efficiënter maken
  • Verhoging en verbreding van de functionele dekking
  • Verlagen van de testkosten
  • Uitvoeren van testen die handmatig niet kunnen worden uitgevoerd
  • Verkleinen van de doorlooptijd van testuitvoering
  • Realiseren van een snellere terugkoppeling van de testresultaten

Een testautomatiserings architectuur speelt een belangrijke rol bij het realiseren van de genoemde doelstellingen. Als er geen goed ontworpen testautomatiserings architectuur is, kan dit leiden tot:

  • vertraging in de testautomatisering
  • vertraging van het uitvoeren van complexe testcases
  • verhoging van de kosten voor het testen

Wat is een testautomatiserings architectuur eigenlijk?

Het komt in de praktijk voor dat organisaties voor testautomatisering starten met een testtool als bijvoorbeeld Selenium of Fitnesse. In die situatie wordt er invulling gegeven aan het geautomatiseerd testen en een klein beetje aan testautomatisering.

Om een goede invulling te kunnen geven aan testautomatisering is een testautomatiserings architectuur nodig. De realisatie van een testautomatiserings archtitectuur (TAA) kan met behulp van een Testautomatiserings Framework (TAF).

Generieke Testautomatiserings Architectuur

Door ISTQB is een generieke testautomatiserings architectuur (gTAA) ontwikkeld die als basis kan dienen voor het ontwikkelen van een specifieke TAA.

De gTAA is opgedeeld in de volgende vier horizontale lagen:

  • Test generatie
    Deze laag ondersteunt het handmatig of geautomatiseerd ontwerpen van logische testgevallen.
  • Test definitie
    Deze laag ondersteunt het definiëren van fysieke testgevallen, testdata, testscripts, etc.
  • Testuitvoering
    Deze laag ondersteunt de testuitvoering, logging en rapportage.
  • Test koppelvlakken
    Deze laag voorziet in de benodigde software om vanuit de testuitvoering te kunnen communiceren met de te testen applicatie via GUI, API’s, services, etc.

Daarnaast onderkent de gTAA:

  • Configuratie Management
    Het gaat hierbij niet alleen om configuratie management voor het te testen systeem maar ook voor:

    • Test modellen
    • Testontwerp, inclusief de testgevallen, testdata en test bibliotheken
    • Testscripts
    • Testtools
    • Test interfaces met de te testen applicatie en de verschillende tools
    • Simulatoren en emulatoren voor de te testen applicatie
    • Testresultaten en testrapporten
  • Test Management
    De TAA moet het test management kunnen ondersteunen. Logging en resultaten moeten makkelijk of geautomatiseerd kunnen worden geëxtraheerd.

Het is niet noodzakelijk om alle lagen te implementeren. In de praktijk zal er vaak gekozen worden voor een bottom-up implementatie.

Meer informatie over de gTAA kun je lezen in de syllabus van ISTQB over testautomatisering.

Het opzetten en implementeren van een TAA is geen sinecure en vraagt om zowel technische kennis als test kennis. Het is aan te bevelen dit als een project uit te voeren. Hierbij is het goed om de planning voor de implementatie van de verschillende componenten, van de TAA, goed af te stemmen met de planning van het testen zelf. De TAA hoeft niet helemaal klaar te zijn op het moment dat de testers beginnen met de voorbereiding.

Ook interessant?

Hybride Testautomatisering Framework

Testautomatisering Framework (TAF)

Voordat wordt ingegaan op wat een Testautomatisering Framework is, worden eerst de verschillende componenten die betrokken zijn bij testautomatisering op ...
Testautomatisering Piramide (2)

Testautomatisering Piramide

Het effectief inzetten van geautomatiseerd testen vraagt om een weloverwogen strategie. Een van de grootste fouten die organisaties kunnen maken ...
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 ...
Selenium onderdelen

Wat is Selenium Suite?

Selenium Suite is een test-framework (open-source) voor onder andere het testen van webapplicaties. Het is te vergelijken met HP Quick ...
Blijf op de hoogte van onze nieuwste ontwikkelingen, schrijf je hier in voor de nieuwsbrief!