icon over onsOnderscheiden door kennis en kunde

Continuous Test

Een door een programmeur uitgewerkte wijziging in de broncode moet natuurlijk doen wat er bedoeld is, maar iedereen maakt fouten. Daarom wordt software getest. Soms met de hand en soms weer met andere programma's. Een bekend programma waarmee software geautomatiseerd getest kan worden is JUnit. Dit programma kan zogenaamde testscripts uitvoeren. Hierin wordt de functionaliteit van het programma gecontroleerd. Ook worden expres foute acties uitgevoerd om te kijken of het programma hierop correct reageert. Een voorbeeld hiervan is het invullen van een achternaam in een telefoonveld.

Software test raamwerkWijzigingen in code hebben soms onbedoelde effecten in andere delen van de code. Daardoor is het goed dat bij een wijziging niet alleen de tests gedraaid worden in het lokale stuk waarin de programmeur aan het werk was, maar alle test over de gehele software. Dit heet regressietesten. Regressietesten kosten veel tijd en worden daardoor niet tijdens het ontwikkelwerk uitgevoerd maar gedelegeerd naar de buildserver. Deze voert dan eens in een bepaalde tijd, soms om het uur, soms iedere nacht, een build van de software uit. JUnit is testsoftware waarmee een groot aantal testcases afgevuurd kunnen worden op de te ontwikkelen applicatie.


Software test tool voor (web) services

SoapUI is een testtool waarmee geautomatiseerd webservices getest kunnen worden. Het is niet bedoeld om via de user interface van een applicatie gebruik te worden. SoapUi prikt direct in op een webservice naar bijvoorbeeld een back-end. De testtool maakt gebruik van SOAP (Simple Object Access Protocol) voor de communicatie met de webservice. Dit zijn XML bestanden. SoapUI stuurt bijvoorbeeld een klaargezet SOAP bestand naar de webservice (request). De reactie van de webservice (response) wordt vervolgens vergeleken met een verwachte response. Dit is vaak ook een SOAP bestand.

SoapUI kan ook een webservice simuleren (MockService). Hierbij wordt een request verstuurd zonder de webservice echt aan te roepen, een vaste response komt terug. Dit kan tijdens de ontwikkelfase handig zijn als de webservice nog niet beschikbaar is.


Ander oplossingen in de markt:

  • Capybara
  • Cucumber
  • Fitnessse
  • Selenium
  • ...en vele anderen