how gray box testing works
gray box testing includes important components of both black and white box testing to get a better result than either could obtain alone both end users and developers perform gray box testing with limited partial knowledge of an application s source code gray box testing can be manual or automated it is more comprehensive and more time consuming than black box testing but not as comprehensive or time consuming as white box testing gray box testers require detailed design documents gray box testing involves identifying inputs outputs major paths and subfunctions it then moves on to developing inputs and outputs for subfunctions executing test cases for subfunctions and verifying those results gray box examplea gray box tester might check and fix the links on a website if a link doesn t work the tester changes the html code to try to make the link work then rechecks the user interface to see if the link works a gray box tester might also test an online calculator the tester would define inputs mathematical formulas such as 1 1 2 2 5 4 and 15 3 then check to see that the calculator provides the correct outputs given those inputs the gray box tester has access to the calculator s html code and can change it if any errors are identified gray box testing looks at both the application s user interface or presentation layer and its internal workings or code it is mainly used in integration testing and penetration testing but it is not suitable for algorithm testing gray box testing is generally used to test an application s user interface security or online functionality through techniques such as matrix testing regression testing orthogonal array testing and pattern testing gray box testers are most likely to identify context specific problems gray refers to the tester s partial ability to see the application s internal workings white refers to the ability to see through the software s interface to its inner workings and black refers to the inability to see the software s internal workings gray box testing is sometimes called translucent testing while white box testing is sometimes called clear testing and black box testing may also be called opaque testing 