Black Box Techniques:
These are test design techniques primarily used during System/Functional testing by the Testing team to design test cases. The word ‘BlackBox’ is key- the application under test(AUT) is treated as a Black Box or an opaque box, the tester is unconcerned about the internal working of the application. What the tester is interested in is getting the system to a known pre-condition, applying some inputs and checking whether the application moves to the expected post-condition with the expected outcome. The behaviour and outcome are verified with the Functional Specification.
So, black box techniques do not concern with HOW a system works, the technology, algorithms, language etc, but the output or outcome.
There are several Black Box techniques proposed in the books by various experts by Erik Van Veenanendal, Rex Black etc. The ISTQB Foundation syllabus focuses on the five most important namely:
Equivalence Partitioning, Boundary Value Analysis, Decision Table, State Transition, Use Cases
What are the benefits of using these techniques:
- These techniques are in a way lessons learnt or observations from past projects on where defects tend to cluster- eg around boundaries, etc. So they help testers design test cases to unearth more defects using principles already known.
- They help increase the coverage of the application under test.
- Optimize or reduce the number of test cases.
- Focus on both positive and negative situations.
The techniques focus on both the positive and negative outcomes. In case of positive tests, the outcome is usually an update/retrieve of data from the database and the next set of actions allowed. In the case of negative tests, the outcomes are valid /meaningful error messages and stopping the user from further actions until the error is rectified.
In the coming blogs, we will focus on each of the above techniques.