This document discusses software quality assurance and testing. It defines various types of testing like white box, black box and grey box testing. It also defines key terms like verification, validation, test adequacy and different testing techniques. Some key points:
- Testing is the process of executing a program to find errors while verification ensures requirements are met and validation checks if the final product satisfies user needs.
- White box testing evaluates internal code and structures while black box testing treats the system as a "black box" without knowledge of internal workings. Grey box testing uses a partial view of internal structures.
- Test adequacy criteria measure how well a test set covers things like statements, branches/decisions, conditions, and