User Tools

Site Tools


Grey-Box Testing


Grey-Box Testing is a method of testing software with partial knowledge of the functions and internal structure of the application. It is used as a means to find any weaknesses in the application due to code structure, algorithms, or errors caused by unexpected inputs. This method is a blend of White-Box Testing (full knowledge of the internal structure) and Black-Box Testing (No knowledge of the internal structure), aiming to be the best of both worlds by being straightforward yet still code targeted.


This software testing is typically started off by identifying inputs, expected outputs, and key paths. Next, find the sub-functions and decide inputs and expected outputs for them. Finally, execute the speculated test cases and compare to the expected results.


There are several techniques that are used in Grey-Box Testing to obtain different information.

  • Matrix Testing- defines all the variables and gives the status of the program.
  • Regression Testing- repeats tests when changes are made on the software to ensure it gives the same results.
  • Pattern Testing- verify the good application for its design and tests it with inputs that have previously caused problems.

Pros and Cons

Some of the reasons to use Grey-Box Testing include advantages from both Black-Box and White-Box Testing, is non-intrusive, combines input of developers and testers, gives intelligent test authoring, and gives unbiased results. Some of the drawbacks are that it has limited access to some of the core structure and testing may be redundant.

  • White-Box Testing- testing software to find the internal structure, in contrast to the functionality.
  • Black Box Testing- a method of software testing that focuses on the input and output to determine the function of an application.
grey_box_testing.txt · Last modified: 2021/03/28 21:28 by alec