Test Design Techniques Flashcards
Types
Specification based(black box)
Structure based(white box)
Experience based
Why use techniques
To select tests effective at finding faults and efficient
Specification based
View software as a black box with uno it’s and outputs but don’t examine how the system is structured. Concentrate on what software does not how it does it. Contains functional and non functional.
Use case testing
Decision table testing
Structure based
Requires knowledge of how software works. Uses internal structure of software to derive test cases
Experience based
Use people knowledge to determine test conditions and cases. Use both technical and business people as they have different perspectives. Can provide insights into high risk areas.
Equivalence partitioning
Dividing a set of test conditions into groups that can be considered the same, system will treat them equivalently
When we have partition we choose one condition from partition to test
Result considered representative of complete partition
Valid and invalid
Invalid partition values can be entered by user but they are not expected input by system
Software should be able to correctly handle values from invalid partition by displaying appropriate error message
Selecting tests from partitions
Select any value in the range , every value treated same way
Deriving test cases
Assign unique identifier to each equivalence class
Until all valid equivalence classes have been covered by at least one test case, write a new test case covering as many equivalence classes as possible
Until all invalid equivalence classes have been covered write a test case that covered one and only one of the uncovered invalid equivalence classes
For each test case annotate it with the equivalence identifiers it covers
Equivalent classes partitioning problems
Doesn’t always define expected output for invalid test cases
Strongly typed languages eliminate the need for consideration of some invalid inputs
Boundary value analysis
Experience shows more faults at boundaries of equivalence partitions where partitions are continuous
Test cases just below and above boundary find faults