Professional Documents
Culture Documents
net
I) Specification-based/Black-box techniques
o o o Equivalence partitioning Boundary value analysis Decision table testing State transition testing Use case testing Inputs to the software or system are divided in to groups that are expected to exhibit similar behavior Equivalence partitions or classes can be found for both valid data and invalid data Partitions can also be identified for outputs, internal values, time related values and for interface values.
Equivalence partitioning
Boundary value analysis o Behavior at the edge of each equivalence partition is more likely to be incorrect. The maximum and minimum values of a partition are its boundary values. A boundary value for a valid partition is a valid boundary value; the boundary of an invalid partition is an invalid boundary value. Boundary value analysis can be applied at all test levels It is relatively easy to apply and its defect-finding capability is high This technique is often considered as an extension of equivalence partitioning.
o o o o
Decision table testing o o o o In Decision table testing test cases are designed to execute the combination of inputs Decision tables are good way to capture system requirements that contain logical conditions. The decision table contains triggering conditions, often combinations of true and false for all input conditions It maybe applied to all situations when the action of the software depends on several logical decisions
State transition testing o o In state transition testing test cases are designed to execute valid and invalid state transitions A system may exhibit a deferent response on current conditions or previous history. In this case, that aspect of the system can be shown as a state transition diagram. State transition testing is much used in embedded software and technical automation.
Use case testing o o o o In use case testing test cases are designed to execute user scenarios A use case describes interactions between actors, including users and the system Each use case has preconditions, which need to be met for a use case to work successfully. A use case usually has a mainstream scenario and some times alternative branches.