Slides 10 Test Case Selection Flashcards
Properties of test cases
● representative
● error sensitive
● low redundancy
● economical
Black Box
● Function coverage
Every specified function is executed at least once
(Jede angegebene Funktion wird mindestens einmal ausgeführt)
● Input coverage
Every input value is used in at least in one test case
● Output coverage
Every output situation is created at least once.
Glass-box test coverages
● statement coverage
● branch coverage
● path coverage
Internal structure of Glass-Box Testing
● control flow
● data flow
Test Case Selection Criterion (TCSC)
A TCSC defines for a given program , implementing its specification, a setof conditions which the set of test cases has to meet.
Reliability (Verlässlichkeit)
A TCSC is reliable if all sets of test cases fulfilling the TCSC discover the same set of errors.
(Ein TCSC ist zuverlässig, wenn alle Sätze von Testfällen, die den TCSC erfüllen, denselben Satz von Fehlern entdecken.)
Validity
A TCSC is valid if there is for each error at least one set of test cases fulfilling the TCSC.
(Ein TCSC ist gültig, wenn es für jeden Fehler mindestens einen Satz von Testfällen gibt, die den TCSC erfüllen.)
Test Adequacy
A program P is adequately tested regarding a defined TCSC iff the set of test cases fulfilling the TCSC discovers no error in P.
(Ein Programm P ist hinsichtlich eines definierten TCSC hinreichend getestet, wenn die Menge der Testfälle, die den TCSC erfüllen, keinen Fehler in P entdeckt.)
Important Test Adequacy Criterion (TAC)
● Specification-based TACs
● Program-based TACs
Program-based TAC
They can be used to
● recognize both strong and weak adequacy criteria
● focus attention on the properties that an effective test data adequacy criterion should exhibit
● select an appropriate criterion for the item under test
TAC Properties
- Applicability
- Non-exhaustive Applicability
- Monotonicity
- Inadequate Empty Set
- Antiextensionality
- General Multiple Change
- Antidecomposition
- Anticomposition
- Renaming
- Complexity
- Statement Coverage
Model-based Testing
software testing in which test cases are derived in whole or in part from a model that describes some (usually functional) aspects of the system under test (SUT).
Examples of test models
● Glass-box testing: control flow graph
● State transition testing: state diagram
● Combinatorial testing: input parameter model