You are on page 1of 3

Object Oriented

Software Engineering
Assignment # 4

Submitted To:

Sir Ali Saeed


Submitted By:

Izna Batool
70068540-U
Grey Box Testing
Introduction:
Grey Box Testing is a software testing methodology that involves a combination of White Box
Testing and Black Box Testing.

Grey Box Testing = White Box Testing + Black Box Testing

Grey Box testing is testing technique performed with limited information about the internal
functionality of the system. A black-box tester is unaware of the internal structure of the
application to be tested, while a white-box tester has access to the internal structure of the
application. A grey-box tester partially knows the internal structure, which includes access to
the documentation of internal data structures as well as the algorithms used.
Grey-box testers require both high-level and detailed documents describing the application,
which they collect in order to define test cases.

Uses:
Grey Box Testing is used or performed for the following reason,
 It provides combined benefits of both black box testing and white box testing.
 It combines the input of developers as well as testers and improves overall product
quality.
 It reduces the overhead of long process of testing functional and non-functional types.
 It gives enough free time for a developer to fix defects.
 Testing is done from the user point of view rather than a designer point of view.

Techniques used for Grey box Testing are:

 Matrix Testing: This testing technique involves defining all the variables that exist in
their programs.
 Regression Testing: To check whether the change in the previous version has regressed
other aspects of the program in the new version. It will be done by testing strategies
like retest all, retest risky use cases, retest within a firewall.
 Orthogonal Array Testing or OAT: It provides maximum code coverage with
minimum test cases.
 Pattern Testing: This testing is performed on the historical data of the previous system
defects. Unlike black box testing, grey box testing digs within the code and determines
why the failure happened.

Steps to perform Grey box Testing are:


 Step 1: Identify inputs.
 Step 2: Identify the outputs.
 Step 3: Identify the major paths.
 Step 4: Identify Subfunctions.
 Step 5: Develop inputs for Subfunctions.
 Step 6: Develop outputs for Subfunctions.
 Step 7: Execute test case for Subfunctions.
 Step 8: Verify the correct result for Subfunctions.
 Step 9: Repeat steps 4 & 8 for other Subfunctions.
 Step 10: Repeat steps 7 & 8 for other Subfunctions.

The test cases for grey box testing may include, GUI related, Security related, Database
related, Browser related, Operational system related, etc.

Advantages:
 Grey-box testing provides combined benefits of both white-box and black-box testing.
 It is based on functional specification, UML Diagrams, Database Diagrams or
architectural view.
 Grey-box tester handles can design complex test scenario more intelligently.
 The added advantage of grey-box testing is that it maintains the boundary between
independent testers and developers.

Disadvantages:
 In grey-box testing, complete white box testing cannot be done due to inaccessible
source code/binaries.
 It is difficult to associate defects when we perform Grey-box testing for a distributed
system.

You might also like