Black-Box Testing

Black box testing is defined as a testing method in which functionality of the application under test (AUT) is tested. Testing of the Application is done without looking the structure of internal code,details of implementation and knowledge of the internal paths of the software.
This type of testing(Black -Box) is entirely based on software requirements and specifications.

               INPUT --------> BLACK BOX --------> OUTPUT


In Black Box testing , basically we focus on input and output without worrying about internal knowledge of the software program.


Steps to do Black-Box Testing:-
1) Initially, specifications and requirement of the system are inspected.
2) Tester chooses valid inputs(positive test scenario) to check whether system under testing is correctly processes them as well as invalid points(negative test scenario) to check system under testing is able to detect them.
3) Expected outputs is determined by tester for all those inputs.
4) Test cases are constructed by software tester with selected inputs.
5) Now, the test cases are executed.
6) Actual outputs are compared with expected outputs by software tester.
7) If there is any defect, it gets fixed and then Re-Tested.

Test Case Design Techniques :-


1) Boundary Value Testing :- The process of testing extreme ends between partitions of the input values is known as Boundary value Testing.So these extreme ends is like Start-End point,Lower-upper,Inside-outside ,maximum-minimum values , and these values are called boundary values and its commonly known as boundary value testing.

The basic idea in boundary testing is to select input variable values at their Minimum, just above minimum, nominal value, maximum and just below the maximum. This is about Boundary Value testing. 

2) Equivalence Partitioning:- It is also a technique of Black box testing in which code is not visible to the tester.Equivalence testing can be applied to all levels of testing like Unit testing,Integration testing,System testing etc.

 As the name implies, in this testing you can divide the test condition into sets into a partition that can be considered the same.It divides the software input data into different equivalence data classes.This technique can be applied where there is a range in the input field.

3) Decision Table Testing :- Decision table testing is the technique of software testing used to check software behavior for different input combinations.This is systematic approach where the different input combinations and their corresponding system behavior i.e Outputs are captured in tabular form
.

It is also called "CAUSE_EFFECT" table where cause and effect are captured for the better test coverage.
A decision-table is a tabular representation of inputs VS rules/test condition/cases.

4) State Transition Testing :- State transition testing is a method of software testing in which changes in input conditions causes changes in the applications under test (AUT).It is black box testing technique in which the tester analyzes the behavior of an application under test for different input conditions in a sequence.


Tester provides both positive and negative input test values and record the system behavior. State Transition is helpful where you need to test different system transitions.
This can be used when a tester is testing the application for a finite set of input goals.Also. we can use this , when the system under test has a dependency on the events/ values in the past.

Advantages of Black-Box Testing :-
i) Black Box testing is efficient when used on large systems.
ii) Tester can be Non-technical.
iii) There is no need for tester to have detailed functional knowledge of system.
iv) Testing is balanced since the tester and developer are independent .
v) As soon as the functional specifications are complete, test cases can be designed.

Dis-advantages of Black-Box Testing :-
i) Test cases are challenging to design without having clear functional specifications.
ii)If the test cases are not developed based on specifications, its difficult to identify tricky inputs.
iii) There are chances of not identified paths during the testing process.
iv)There is high probability of repeating tests already performed by the programmer.

Check out the content for Testing and keep urself updated with Trending Technologies.

Comments

Popular posts from this blog

Blue Prism Interview Questions and Answers

Selenium Interview Questions - Top MNC's

Trending IT Technologies in 2019