Black Box Testing
Black Box Testing
Black Box Testing is a software testing method in which the functionalities of software
applications are tested without having knowledge of internal code structure, implementation
details and internal paths. Black Box Testing mainly focuses on input and output of software
applications, and it is entirely based on software requirements and specifications.
For Example, an operating system like Windows, a website like Google, a database like Oracle
or even your own custom application. Under Black Box Testing, you can test these applications
by just focusing on the inputs and outputs without knowing their internal code implementation.
Various parameters checked in black box testing are:
Accurate actions performed by users
System’s interaction with the inputs
The response time of the system
Use of data structures Issues in the user interface
Usability issues
Performance issues
Types of Black Box Testing
There are many different types of Black Box Testing, some of them are given below:
Functional testing – This is a type of black box testing which is related
to the functional requirements of a system; Functional testing is
concerned only with the functional requirements of a system and covers
how well the system executes its functions.
Non-functional testing – This black box testing type is not related to
testing of specific functionality, Non functional testing is concerned with
the non-functional requirements and is designed specifically to evaluate
the readiness of a system according to the various criteria which are not
covered by functional testing.
Regression testing – Regression Testing is performed after code fixes,
upgrades or any other system maintenance to check the new changes has
not affected any existing functionality.
How to do BlackBox Testing
Here are the generic steps followed to carry out any type of Black Box Testing.
Initially, the requirements and specifications of the system are examined.
Tester chooses valid inputs (positive test scenario) to check whether SUT processes them
correctly. Also, some invalid inputs (negative test scenario) are chosen to verify that the
SUT is able to detect them.
Tester determines expected outputs for all those inputs.
Software tester constructs test cases with the selected inputs.
The test cases are executed.
Software tester compares the actual outputs with the expected outputs.
Defects if any are fixed and re-tested.
From the above table, we can view the following inputs that are given.
The minimum boundary value is given as 21.
The maximum boundary value is given as 65.
The valid inputs for testing purposes are 21, 22, 64 and 65.
The invalid inputs for test cases are 20 and 66.
Test Case Scenarios
1. Input: Enter the value of age as 20 (21-1)
Output: Invalid
2. Input: Enter the value of age as 21
Output: Valid
3. Input: Enter the value of age as 22 (21+1)
Output: Valid
4. Input: Enter the value of age as 65
Output: Valid
5. Input: Enter the value of age as 64 (65-1)
Output: Valid
6. Input: Enter the value of age as 66 (65+1)
Output: Invalid
From the above table, we can view the following inputs that are given.
The minimum boundary value is given as 8.
The maximum boundary value is given as 14.
The valid character lengths for testing purpose are 8, 9, 14 and 13
The invalid character lengths for test cases are 7 and 15.
Test Case Scenarios
1. Input: Enter the text length as 7 (Min length -1)
Output: Invalid
2. Input: Enter the text length as 8 (Min length)
Output: Valid
3. Input: Enter the text length as 9 (Min length +1)
Output: Valid
4. Input: Enter the text length as 14 (Max length)
Output: Valid
5. Input: Enter the value of age as 13 (Max length -1)
Output: Valid
6. Input: Enter the value of age as 15 (Max length +1)
Output: Invalid
Example-2 :
Let us consider an example of software application. There is function of software
application that accepts only particular number of digits, not even greater or less than
that particular number.
Consider an OTP number that contains only 6 digit number, greater and even less than
six digits will not be accepted, and the application will redirect customer or user to error
page. If password entered by user is less or more than six characters, that equivalence
partitioning method will show an invalid OTP. If password entered is exactly six
characters, then equivalence partitioning method will show valid