May 23, 2023

Grey-box Testing

Great job on starting a new lesson! After reading this lesson, click Next 👉 button at bottom right to continue to the next lesson.

Grey-box testing is a test technique in software testing that leverages some knowledge of the software structure and its code. You test the code and how it works. Grey-box testing is based on your software requirements, design, and code.

Grey-box Testing Examples

  • You test a calculator app. You know its functions, operators, variables, and algorithms. You test if the app handles exceptional inputs correctly, performs all arithmetic operations, and displays clear messages.
  • You test a web application. You know its architecture, database schema, and user interface. You test if the application handles user inputs and outputs following security best practices, and saves and retrieves user transactions to and from the database correctly.
  • You test a sorting algorithm. You know its input domain, logic, and complexity. You test if the algorithm sorts the data correctly, with an increasing number of inputs, without unexpected performance degradation.
  • You test a mobile game. You know its design, code, graphics, sound, and controls. You test the edge cases to find if the game implements the game logic, graphics, audio, and controls correctly.

Tips for Grey-box Testing

  • Use different test techniques to measure code coverage and functionality, such as matrix testing, regression testing, pattern testing, etc.
  • Cover both exceptional and normal scenarios to test how the code handles them.
  • Test the most frequently used units of the software, such as specific conditions, loops, and functions.
  • Use tools, such as Selenium with JUnit, to automate executing tests, and Code Coverage Analyzers to automate compiling results.

FAQ (interview questions and answers)

  1. What is the difference between grey-box testing and black-box testing?
    Grey-box testing tests the software by leveraging some knowledge of the software structure and its code. Black-box testing tests the software by ignoring its code or structure.
  2. What is the advantage of grey-box testing?
    It can test both functional and structural aspects of the software. It can find defects that hard to detect in pure black-box or white-box testing.
  3. What are the challenges of grey-box testing?
    It can be difficult to obtain current knowledge of the software architecture and code. It can be hard to design tests that are relevant but different from black-box and white-box tests.
  4. Is orthogonal array testing a type of grey-box testing?
    Yes, it is a technique to test the software by using a subset of all possible combinations of inputs. It is under grey-box testing as it leverages knowledge of the structure and code to design efficient tests with the correct variables.
Remember to just comment if you have any doubts or queries.


No comments:

Post a Comment

Note: Only a member of this blog may post a comment.