Functionaliteit testen

functionaliteit

Functionaliteit

Aan het testen van functionaliteit wordt vaak de meeste tijd besteed tijdens een systeemtest. Dat is op twee manieren logisch. Ten eerste is functionaliteit altijd van redelijk of groot belang, ten tweede is functionaliteit het meest gevarieerde kwaliteitsaspect, maar daardoor ook het leukste.

Tijd voor een simpel begin; pak een vel A4 papier om één stuk functionaliteit te beschrijven. Is er een logische volgorde in stappen? Schrijf dan links alle stappen op van boven naar beneden. En daarna is het tijd om te ‘brainstormen’ op alle beslissingen en alle mogelijkheden en bijbehorende resultaten. Hieronder zomaar een voorbeeldje van ons logistieke proces.

Functionele test

Het gaat natuurlijk niet om de inhoud van dit stukje logistiek, maar om het algemene beeld. Je ziet dat het aantal variaties al snel explodeert. Je ziet ook dat het koppelen van variaties kan leiden tot onvoorziene combinaties. Daarom ook mijn eerdere tip om deze stap ook als review te gebruiken.

Maar hoe maken we hier nu testgevallen van? Hiervoor gebruik ik als basis graag een versimpelde variant van de techniek die de professionals ‘Data Combinatie Test’ noemen. Kijk eerst hoeveel tijd je hieraan mag besteden volgens de teststrategie. Kijk dan hoeveel testgevallen je kunt doen. Kijk vervolgens, samen met bedrijfsmensen én IT-ers welke combinaties je zou moeten testen. Bijvoorbeeld; de logistiek manager vindt dat ik alle combinaties tussen adressering (binnenland of buitenland) en spoed (ja of nee) moet testen, en dat ik ieder medium een keer test. Hieronder zomaar 4 voorbeelden van testgevallen die je dan kunt kiezen.

datacombinaties

Dus als je bepaalde combinaties écht heel belangrijk vindt, kun je álle varianten testen. Of je kunt net de grensgevallen gaan testen, zoals een pakket van 29,9 gram, dan van 30,0 gram en dan van 30,1 gram. Een professional zou je met trots vertellen dat je dan een grenswaarde analyse doet.

> > Door naar performance testen

  1. Claudio Geysel schreef op woensdag 28 oktober 2015 om 16:01 1

    Hoi Sander,

    leuke, toegankelijke en informatieve site heb je gemaakt. Dank daar voor.
    Wat voor mij nog wat verduidelijking zou geven zijn de stappen van Testsituaties > Testgeval > Testscript. Daarnaast, hoe ga je om met het detail testverslag en voortgang rapportage?

    Met vriendelijke groet,
    Claudio Geysel

  2. Sander Mol schreef op zaterdag 31 oktober 2015 om 22:51 2

    Hoi Claudio, bedankt voor je reactie! Wat ik met deze pagina over functioneel testen vooral wil bereiken, is dat testers vooraf nadenken voordat ze starten met een willekeurig testgeval. Een testgeval is dan één end-to-end test, zoals de website openen, een simpele verzekering afsluiten, een online account maken en je bevestiging per mail zien binnenkomen. Zodra dit is gelukt, gaan de meesten wéér zomaar een testgeval bedenken en uitvoeren. Ik ben een voorstander van verkennend testen, maar aan het eind van de rit wil iedereen weten wat je had kúnnen testen en hoeveel daarvan ook echt getest is. Dit zijn de testsituaties. Als voorbeeld, ook weer in de verzekeringswereld: wil ik zien dat mijn aanvraag voor een autoverzekering één keer uitvalt, of wil ik dat hij op alle redenen een keer uitvalt (leeftijd aanvrager, beveiligingsklasse auto, verleden met justitie, enzovoort).

    En dan het stukje ‘testscript’. Ik probeer deze term tegenwoordig niet te gebruiken, omdat het al snel doet denken aan testautomatisering. Liever praat ik over testset. Zo heb ik een testset met voor iedere verzekering één testgeval die de verzekering afsluit. Maar ik heb ook een testset met de testgevallen die álle varianten van de inboedelverzekering testen. De ene set voer je uit om snel te bepalen of de testomgeving nog stabiel is, de andere als er iets aan de premiestelling is veranderd.

    Tot slot over rapportage en verslagen, daar valt heel veel over te zeggen, het hangt er helemaal vanaf wat je nodig hebt, dus dat hoor ik dan graag. Hopelijk heeft het eerste gedeelte al wel wat meer inzicht gegeven, daar in ieder geval veel succes mee!

Naam*: E-mail*: