Grey box testing is the combination of black box testing and white box. The intent of this trial is to find defects in poor design or poor implementation of the process.
In grey box testing, test engineer is equipped with the knowledge of the process and design of test cases or test information based on knowledge of the process.
For example, think about a hypothetical case in which you require to test a web application. The functionality of this web application is simple, enter your personal details such as electronic mail and field of interest in the World Wide Web form and submit this form. The server receives the information and based on the area of interest to collect some items and mail to the electronic mail given. E-mail validation is happening in the client side using Java script.
In this case, the absence of implementation detail, it is feasible to test form validation web / e-mail ID is invalid and diverse field of interests to be sure that the functionality is intact.
But, in case you know the implementation detail, you know that the process is doing following assumptions
* Server never gets invalid mail ID
* Server never sends a message to valid identification
* Server never gets this error notification electronic mail.
So as part of the grey box testing, in the example above you have a test case for clients in Java Scripts are disabled. It could happen for any reason, and if it happens, validation can not occur in the client's site. In this case, the assumptions made by the process and are violated
* The server receives invalid mail ID
* The server sends a message to invalid mail ID
* Server will get no notification