- [ ] Testtechnieken uitwerken inclusief voorbeelden.
Testtechnieken zijn specifieke methoden of benaderingen die worden gebruikt om de software te testen en zijn meestal gericht op hoe de testcases worden ontworpen en uitgevoerd. Ze kunnen zowel op de interne werking van de software als op de externe werking gericht zijn.
Testtechnieken kunnen helpen bij het bepalen van de testdekking en wordt daarom ook wel dekkingsvorm genoemd.
## Black-box Testing
Testmethoden waarbij de interne werking van de software niet bekend is bij de tester.
- **Equivalence Partitioning (EP)**
[[Grenswaarde analyse]]
Verdeelt de inputgegevens in equivalentieklassen om te testen.
- **Boundary Value Analysis (BVA)**
Test de grenswaarden van inputgegevens.
- **Decision Table Testing**
Gebruikt [[Beslissingstabellen]] om alle combinaties van invoercondities te testen.
- **State Transition Testing**
Test de overgang van de softwaretoestand bij veranderingen in invoer.
- **Use Case Testing**
Test de software op basis van de gebruikscases die in de specificaties zijn beschreven.
- **Error Guessing**
Baseert tests op de ervaring van de tester om mogelijk falen te identificeren.
## White-box Testing
Testmethoden waarbij de interne structuur en werking van de software bekend is bij de tester.
- **Statement Coverage**
Verzekert dat elke regel code ten minste één keer wordt uitgevoerd.
- **Branch Coverage**
Verzekert dat alle vertakkingen van beslissingspunten in de code worden getest.
- **Path Coverage**
Test alle mogelijke paden door de code.
- **Condition Coverage**
Verzekert dat elke voorwaarde in de beslissingen minstens één keer waar en onwaar is.
- **Multiple Condition Coverage**
Test combinaties van voorwaarden in beslissingspunten.
## Experience-based Testing
Tests gebaseerd op de ervaring en intuïtie van de tester.
- **Exploratory Testing**: Testen zonder vooraf gedefinieerde testcases, waarbij de tester de software verkent.
- **Error Guessing**: Identificeren van fouten door ervaring en intuïtie van de tester.
- **Ad-hoc Testing**: Informele testmethoden zonder formele testcases of planning.
- **Checklist-based Testing**: Gebruik van checklists om te controleren of aan bepaalde vereisten wordt voldaan.
# TMAP vs ISTQB
## TMAP
TMAP beschrijft de volgende test design technieken
- [[Beslissingstabellen]] / [decision table test](https://www.tmap.net/node/102)
- [data combination test](https://www.tmap.net/node/115)
- [data cycle test](https://www.tmap.net/node/113)
- [elementary comparison test](https://www.tmap.net/node/116)
- [error guessing](https://www.tmap.net/node/111)
- [exploratory testing](https://www.tmap.net/node/112)
- [process cycle test](https://www.tmap.net/node/114)
- [reallife test](https://www.tmap.net/node/118)
- [semantic test](https://www.tmap.net/node/136)
- [state transition testing](https://www.tmap.net/node/645)
- [syntactic test](https://www.tmap.net/node/137)
- [use case test](https://www.tmap.net/node/138)
## ISTQB
![[Screenshot 2025-04-09 at 14.30.53 1.png]]
![[Image2 1.png]]![[Image 2.png]]