Ga terug

Test 1.. 2.. 3..

Automatisch software testen op fouten? Het kan!

Software zonder fouten. Software dat altijd op een optimale manier functioneert. Software dat je nooit zal laten vloeken en tieren. Klinkt dat als een utopie? Misschien een beetje dan. Door ons proces continu te verbeteren, streven we naar betere software en meer invloed van klanten. Door een geautomatiseerd testsysteem te gebruiken zal het testproces verbeterd en versneld worden. Lees in dit artikel hoe dat achter de schermen in zijn werk gaat.

Het zou ideaal zijn als software nooit fouten bevat, altijd op een ideale manier functioneert en
vooral dat het nooit frustratie oplevert. Deze aspecten houden we bij Idee101 constant in ons
achterhoofd wanneer we software aan het ontwikkelen zijn. Door klanten te betrekken in het
ontwikkelproces zal het eindresultaat meer voldoen aan de eisen en wensen van de klant, zelfs als door voortschrijdend inzicht de wensen en eisen tijdens het proces veranderen. De klant blijft het beste op de hoogte van de processen in het bedrijf en kan daardoor het beste meedenken over hoe deze in de software te vangen zijn. Zo worden processen verbeterd en ondersteunt de software waar dat het meest nodig is.

Softwarepakketen die hier ontwikkeld worden bevatten vaak enkele duizenden tot
tienduizenden regels code. De grootste pakketten gaan voorbij vijfhonderdduizend regels code. De architectuur van software is erg belangrijk. Wanneer wensen en eisen veranderen moet dit toch zo makkelijk mogelijk ingepast kunnen worden. De implicaties die een kleine wijziging heeft kunnen een enorme impact op de code in het pakket hebben. Hierom is het erg belangrijk om klanten zoveel mogelijk mee te laten denken in de ontwikkeling van de hulpmiddelen die voor hen ontwikkeld worden. Zo zal een softwarepakket uiteindelijk nog beter functioneren en zal het veel minder frustratie opleveren.

Een ander aspect wat frustratie op kan leveren is dat er fouten in de software zitten. In
vakjargon zijn dit de welbekende Bugs, een term die volgens verhalen voortkomt uit een computer waar vreemde dingen gebeurden doordat er een insect ingevlogen was. Doordat programma’s een vrij onbeperkt aantal mogelijkheden hebben om data in te voeren of aan te passen, zijn er net zoveel situaties waar rekening mee gehouden moet worden tijdens het testen. Om goed te kunnen testen is het noodzakelijk om de hele situatie, de workflow en alle uitzonderingen te kennen die -mogelijk- op kunnen treden bij die feature (bijvoorbeeld een formulier).

Op dit moment zijn we bezig met het implementeren van een zogenaamd Continuous
Integration systeem. Dit systeem zorgt voor een naadloze integratie van de software die verschillende programmeurs schrijven en daar bovenop ook voor het testen van de applicatie. Hiervoor moeten tests geschreven worden die iedere keer door het systeem opnieuw worden uitgevoerd. Fouten worden zo eerder opgemerkt en sneller opgelost. Het systeem voert ook tests uit die gebruikersinput simuleren, zo worden keer op keer verschillende mogelijkheden automatisch ingevuld. Het systeem weet welke output er zou moeten zijn en kan zo aangeven of de software nog steeds werkt zoals verwacht.

Het implementeren van een testsysteem zoals hierboven beschreven staat is een grote verbetering die steeds secuurder zal worden hoe meer tests geschreven worden. De verschillende onderdelen worden gefaseerd ingevoerd in het aankomende jaar.

De verbeteringen die we kunnen bereiken door automatisch te testen zijn onder andere dat er
meer tijd zal zijn om te programmeren, de software stabieler en nog beter getest zal zijn, fouten beter gelokaliseerd en opgelost kunnen worden en vooral dat klanten blij worden van onze software.

Categorie: Techniek | Gepubliceerd: 1 maart 2016
Copyright © Idee101 B.V. · Algemene voorwaarden