Simply put, grey box testing is a combination of black box and white box testing. Grey box testing will cover both front end and back-end testing of a software application. For the front end testing, no programming knowledge is required whereas with the back-end it is required.
Grey box testing is a technique for testing a software application for those who have some understanding of the internal workings of the application.
Simply put, black box testing is a software application testing method where the functionality of the system is tested without any interaction with the internal structure of the application’s code base. This method of testing is a rather dynamic and can be applied to each of the types of software testing.
To test something is to evaluate the functionality of it against some criteria. The process of software application testing is an exercise with the purpose of checking whether or not a system meets both the user and system requirements that were set out in the earlier stages of the system development life-cycle. The process of software application testing involves running and analyzing a system in various ways in a bid to identifying bugs and errors and to check for requirements that might have been missed in the development stage.
White box testing is testing that is based on the internal structure of a systems code and can also be known as glass box testing, clear box testing or structural testing. White box testing typically takes place at unit level and focuses on internal system testing.