Software testing is basically the sum total of the two activities – Verification and Validation.
Verification is the process of evaluating the artifacts of software development in order to ensure that the product being developed will comply with the standards. It is the static process of analyzing the documents and not the actual end product.
Whereas, Validation is the process of validating that the developed software product conforms to the specified business requirements. It involves dynamic testing of a software product by running it.
The difference between the two is-
|Verification involves the evaluation of artifacts of software development to ensure that the product being developed will comply with its requirements.||Validation involves validation of developed software product to check if it conforms to the specified business requirements.|
|It is a static process of analyzing the documents and not the actual end product.||It involves dynamic testing of a software product by running it.|
|Verification is a process-oriented approach.||Validation is a product-oriented approach.|
|Answers the question – “Are we building the product right?”||Answers the question – “Are we building the right product?”|
|Errors found during verification require lesser cost/resources to get fixed as compared to be found during the validation phase.||Errors found during validation require more cost/resources. Later the error is discovered higher is the cost to fix it.|
|It involves activities like document review, test cases review, walk-throughs, inspection etc.||It involves activities like functional testing, automation testing etc.|
That’s all I have in this section. feel free to ask any question in the comments . Check our complete Software testing tutorial here.