Verification & Validation And Black Box vs Grey Box vs White Box
Verification & Validation
These two terms are very confusing for people, who use them interchangeably. Let's discuss about them briefly.
S.N. | Verification | Validation |
---|---|---|
1 | Are you building it right? | Are you building the right thing? |
2 | Ensure that the software system meets all the functionality. | Ensure that functionalities meet the intended behavior. |
3 | Verification takes place first and includes the checking for documentation, code etc. | Validation occurs after verification and mainly involves the checking of the overall product. |
4 | Done by developers. | Done by Testers. |
5 | Have static activities as it includes the reviews, walkthroughs, and inspections to verify that software is correct or not. | Have dynamic activities as it includes executing the software against the requirements. |
6 | It is an objective process and no subjective decision should be needed to verify the Software. | It is a subjective process and involves subjective decisions on how well the Software works. |
Black Box vs Grey Box vs White Box
S.N. | Black Box Testing | Grey Box Testing | White Box Testing |
---|---|---|---|
1 | The Internal Workings of an application are not required to be known | Somewhat knowledge of the internal workings are known | Tester has full knowledge of the Internal workings of the application |
2 | Also known as closed box testing, data driven testing and functional testing | Another term for grey box testing is translucent testing as the tester has limited knowledge of the insides of the application | Also known as clear box testing, structural testing or code based testing |
3 | Performed by end users and also by testers and developers | Performed by end users and also by testers and developers | Normally done by testers and developers |
4 | Testing is based on external expectations - Internal behavior of the application is unknown | Testing is done on the basis of high level database diagrams and data flow diagrams | Internal workings are fully known and the tester can design test data accordingly |
5 | This is the least time consuming and exhaustive | Partly time consuming and exhaustive | The most exhaustive and time consuming type of testing |
6 | Not suited to algorithm testing | Not suited to algorithm testing | Suited for algorithm testing |
7 | This can only be done by trial and error method | Data domains and Internal boundaries can be tested, if known | Data domains and Internal boundaries can be better tested |