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.

Validation in Software Testing

Validation in Software Testing 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.

KEY DIFFERENCE

  • 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.
  • 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.
  • Verification process comes before validation whereas Validation process comes after verification.

Verification vs Validation: Key Difference

 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

  • In Software Engineering, consider the following specification

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

Verification v/s Validation in a Software Testing

    • So new specification is

A clickable button with name Submit

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

Verification v/s Validation in a Software Testing

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

 

YOU MIGHT LIKE: