Testscript
Een testscript is een script voor het testen van bijvoorbeeld sofware.
Ontwikkelen
Een testscript is een onderdeel van gestructureerd testen. Een belangrijk voordeel is dat er logisch wordt nagedacht, het script dwingt dat af. Er moet worden nagedacht over de beginsituatie, over de actie en over het verwachtte resultaat. Daarbij wordt met name gekeken naar de volledigheid. Worden alle requirements getest? In een testscript is vaak een aantal testcases opgenomen. In de ideale situatie wordt in een geautomatiseerd testscript alle testcases getest, waarbij alle requirements getest worden. Het script zou ook moeten doorlopen bij fouten zodat het volledig wordt uitgevoerd.
Uitvoering
Testscripts kunnen handmatig en geautomatiseerd worden uitgevoerd.
- Handmatige scripts zijn een blackbox test. Een script bestaat uit een aantal testcases, die in een logisch volgorde zijn geplaatst. Voor een testcase moet eerste een goede beginsituatie gemaakt worden. Als die eenmaal aanwezig is kunnen snel een aantal testcases achter elkaar afgespeeld worden.
- Geautomatiseerde scripts zijn korte programma's. Hiervoor zijn gespecialiseerde hulpmiddelen beschikbaar zoals: HP QuickTest Professional, SilkTest, Rational Robot). Ook kan het geschreven worden in een bekende programmeertaal zoals C++, CC#, Tcl, Expect, Java, PHP, Perl, Powershell, Basic, Python, or Ruby).
- Ook is een combinatie van handmatige en geautomatiseerde scripts mogelijk en meest gebruikelijk eigenlijk.
voor en nadeel
Het grote voordeel van geautomatiseerd testen is dat het sneller gaat met minder menselijke ingrepen en dus minder menselijke fouten. Deze tests zijn ook uitstekend bruikbaar bij regressietesten of stresstesten. Een nadeel van geautomatiseerd testen is dat het maken van deze geautomatiseerde tests veel tijd kost, die er niet altijd aan besteed wordt, waardoor ze vaak slecht geschreven zijn en ze vaak stoppen als ze afgespeeld worden, zonder dat duidelijk wordt wat er nu precies fout ging.
Als een systeem door mensen gebruikt gaat worden lijkt het goed om het gedeeltelijk ook door mensen te laten testen. Met geautomatiseerde tests worden alleen die zaken gevonden waarvoor ze zijn ontworpen. Tijdens een handmatige test kunnen ook zaken opvallen waar niet expliciet naar gezocht werd.
Men moet niet in de val lopen om meer tijd te besteden aan het maken van een geautomatiseerde test, niet meer dan het uitvoeren van de handmatige tests zou kosten, tenzij het in de planning ligt de test vaker uit te voeren bijvoorbeeld tijdens regressie of stresstesten.