Testing is het georganiseerde proces van het beoordelen of een product, component of proces werkt zoals bedoeld. Het doel is om risico’s te verkleinen, defecten vroeg te vinden en de gebruikservaring, prestaties en veiligheid te waarborgen.
Testniveaus
- Unit test: verifieert afzonderlijke functies of componenten.
- Integratietest: controleert de samenwerking tussen modules, API’s en systemen.
- Systeemtest: toetst het volledige systeem tegen vereisten.
- End-to-end test: simuleert realistische gebruikerstrajecten over de hele keten.
- Acceptatietest (UAT): bevestigt met stakeholders of het product klaar is voor livegang.
Testtypen
- Functioneel: werkt de functionaliteit volgens specificaties.
- Regressie: waarborgt dat nieuwe wijzigingen niets breken.
- Performance: snelheid, belasting en stabiliteit (load, stress, soak).
- Security: kwetsbaarheden en misbruikscenario’s.
- Usability en toegankelijkheid: gebruiksgemak en naleving van WCAG-richtlijnen.
- Compatibiliteit: browsers, devices, schermformaten en OS-versies.
- API-tests: contracten, responses, foutafhandeling en time-outs.
Methodieken en aanpak
- Risk-based testing: prioriteit op functies met hoogste impact en kans op falen.
- Shift-left: zo vroeg mogelijk testen, al vanaf design en ontwikkeling.
- TDD/BDD: eerst tests of gedragscriteria definiëren, dan implementeren.
- Exploratory testing: doelgericht, onderzoekend testen zonder strikt script.
- Black-box / white-box: testen zonder of met kennis van de interne code.
- Testdata- en omgevingbeheer: representatieve, privacy-veilige data en stabiele testomgevingen.
- Metrieken en rapportage: testdekking, defectdichtheid, doorlooptijd en hersteltijden.
Automatisering en toolstack
Geautomatiseerde tests versnellen feedback en maken onderdeel uit van CI/CD-pijplijnen. Denk aan unit- en componenttests, UI-regressie, API-tests en performance checks.
- Front-end/UI: frameworks voor browserautomatisering en visuele regressie.
- Unit en component: testframeworks voor JavaScript, Java, PHP en andere talen.
- API: tools voor contract- en integratietests.
- Performance: load- en stress-testtools.
- Kwaliteitsaudits: Lighthouse- en toegankelijkheidsscanners.
- Device/browsers: cloudplatforms voor cross-browser en device testing.
