BLACK BOX TESTING
Among all the software testing methods black box testing is the one in which functionalities of software applications are checked without the knowledge of internal path and code. This test is also called behavioral testing and are based on software requirements and specifications. It is focused on input and output of software applications. Black Box can be any software system in which applications can be tested by just focusing on inputs and outputs.
Black Boxing Procedure
- Examination of requirements and specifications of the system.
- Positive test scenarios are chosen by the tester to check if SUT processes them accordingly.
- Expected outputs are determined for each input
- Test cases are constructed with selected inputs
- Constructed test cases are implemented
- Comparison of actual output with expected output takes place
- Re-testing and bug fixes
Black Boxing Types
- Functional Testing
- Non-Functional Testing
- Regression Testing
We will briefly discuss each one by one:
- Functional Testing: It is connected with functional requirements of the system.
- Non-Functional Testing: It is related to useability, scalability and performance of the system.
- Regression Testing: Regression testing is done after the upgrades and bug fixes.
Black Box Tools:
Techniques of Black Box Testing:
- Equivalence Class Testing:
This technique is used to optimize the test cases and maintain test coverage.
- Boundary Value Testing:
This testing is done to explain if the certain range of values are acceptable by the system or not.
- Decision Table Testing:
In this testing causes and effects are put in a matrix and there is a unique column with the combination.
White Box Testing:
- White box testing is related to the internal coding and this is how it differs from black box testing.
- Programming language is essential for conducting white box.
- It does not help communicate between testing modules.
Difficulties in Black Box Testing:
- This test is difficult to automate.
- Infeasible for using all user paths.
- Not that effective in calculating the coverage.
- Low scale tests are conducted.