Chapter 4 - Test Analysis and Design Flashcards
Describe Black-Box test techniques ?
(also known as specification-based techniques) are based on an analysis of the specified behavior of the test object without reference to its internal structure. Therefore, the test cases are independent of how the software is implemented. If the implementation changes, but the required behavior stays the same, then the test cases are still useful.
Commonly used Black-box Test Techniques:
- Equivalence Partitioning
- Boundary Value Analysis
- Decision Table Testing
- State Transition Testing
Describe White-box test techniques ?
(also known as structure-based techniques) are based on an analysis of the test object’s internal structure and processing. As the test cases are dependent on how the software is designed, they can only be created after the design or implementation of the test object.
code-related white-box techniques:
- Statement testing
- Branch testing
Describe Experience-based test techniques ?
They effectively use the knowledge and experience of testers for the design and implementation of test cases. The effectiveness of these techniques depends heavily on the tester’s skills.
- can detect defects that may have been missed using the black-box and white box techniques.
Commonly used Black-box Test Techniques ?
(K3)
- Equivalence Partitioning
- Boundary Value Analysis
- Decision Table Testing
- State Transition Testing
Equivalence Partitioning (EP) (K3)
It divides data into partitions.
If a test case, that tests one value from an equivalence partition, detects a defect, this defect should detected by test cases that test any other value from the same partition. Therefore, one test for each partition is sufficient.
Boundary Value Analysis (BVA) (K3)
It’s a technique based on exercising the boundaries of equivalence partitions. Therefore, BVA can only be used for ordered partitions.
Decision Table Testing ? (K3)
Decision tables are used for testing the implementation of system requirements that specify how different combinations of conditions result in different outcomes. They are an effective way of recording complex logic, such as business rules.
State Transition Testing ? (K3)
A state transition diagram models the behavior of a system by showing its possible states and valid state transitions.
A transition is initiated by an event, which may be additionally qualified by a guard condition.
Code-related white-box test techniques?
Because of their popularity and simplicity we will focus on these two :
- Statement testing
- Branch testing
Statement Testing and Statement Coverage ?
A white-box test technique;
In statement testing, the coverage items are executable statements. The aim is to design test cases that exercise statements in the code until an acceptable level of coverage is achieved.
Coverage is measured as the number of statements exercised by the test cases divided by the total number of executable statements in code, and is expressed as a percentage.
(Coverage TC/Executable statements)*100%
Branch Testing and Branch Coverage?
A white-box test technique.
A branch is a transfer of control between two nodes in the control flow graph, which shows the possible sequences in which source code statements are executed in the test object. Each transfer of control can be either unconditional (straight-line code) or conditional (decision outcome)
What is the value of White-box testing ?
The entire software implementation is taken in account during testing, which facilitates defect detection even when the software specification is vague, outdated or incomplete.
Weakness : If the software does not implement one or more requirements, white-box testing may not detect the resulting defects of omission.
Can be used in static testing.
Commonly used Experience-based Test Techniques ?
- Error guessing
- Exploratory testing
- Checklist-based testing
Collaborative User Story Writing - What is a User Story ?
A user story represents a feature that will be valuable to either a user or purchaser of a system or software.
Most common format for a user story is ?
The most common format for a user story is “As a [role], I want [goal to be accomplished], so that I can
[resulting business value for the role]”, followed by the acceptance criteria.