Difference Between Verification and Validation with Example

What is Verification in Software Testing?

Verification in Software Testing is a process of checking documents, design, code, and program in order to check if the software has been built according to the requirements or not. The main goal of verification process is to ensure quality of software application, design, architecture etc. The verification process involves activities like reviews, walk-throughs and inspection.

What is Validation in Software Testing?

Validation in Software Engineering is a dynamic mechanism of testing and validating if the software product actually meets the exact needs of the customer or not. The process helps to ensure that the software fulfills the desired use in an appropriate environment. The validation process involves activities like unit testing, integration testing, system testing and user acceptance testing.


  • Verification process includes checking of documents, design, code and program whereas Validation process includes testing and validation of the actual product.
  • Verification does not involve code execution while Validation involves code execution.
  • Verification uses methods like reviews, walkthroughs, inspections and desk-checking whereas Validation uses methods like black box testing, white box testing and non-functional testing.
  • Verification checks whether the software confirms a specification whereas Validation checks whether the software meets the requirements and expectations.
  • Verification finds the bugs early in the development cycle whereas Validation finds the bugs that verification can not catch.
  • Comparing validation and verification in software testing, Verification process targets on software architecture, design, database, etc. while Validation process targets the actual software product.
  • Verification is done by the QA team while Validation is done by the involvement of testing team with QA team.
  • Comparing Verification vs Validation testing, Verification process comes before validation whereas Validation process comes after verification.

Verification vs Validation: Key Difference

Here is the main difference between verification and validation testing:

Verification Validation
The verifying process includes checking documents, design, code, and program It is a dynamic mechanism of testing and validating the actual product
It does not involve executing the code It always involves executing the code
Verification uses methods like reviews, walkthroughs, inspections, and desk- checking etc. It uses methods like Black Box Testing, White Box Testing, and non-functional testing
 Whether the software conforms to specification is checked It checks whether the software meets the requirements and expectations of a customer
It finds bugs early in the development cycle It can find bugs that the verification process can not catch
Target is application and software architecture, specification, complete design, high level, and database design etc. Target is an actual product
QA team does verification and make sure that the software is as per the requirement in the SRS document. With the involvement of testing team validation is executed on software code.
It comes before validation It comes after verification

Example of verification and validation

Now, let’s take an example to explain verification and validation planning:

  • In Software Engineering, consider the following specification for verification testing and validation testing,

A clickable button with name Submet

  • Verification would check the design doc and correcting the spelling mistake.
  • Otherwise, the development team will create a button like

Example of Verification

Example of Verification

    • So new specification is

A clickable button with name Submit

  • Once the code is ready, Validation is done. A Validation test found –

Example of Validation

Example of Validation

  • Owing to Validation testing, the development team will make the submit button clickable