In this section, we will learn about verification and validation testing and their major differences.

Verification testing

Verification testing includes different activities such as business requirements, system requirements, design review, and code walkthrough while developing a product.

It is also known as static testing, where we are ensuring that "we are developing the right product or not". And it also checks that the developed application fulfilling all the requirements given by the client.

Verification and Validation Testing

Validation testing

Validation testing is testing where tester performed functional and non-functional testing. Here functional testing includes Unit Testing (UT), Integration Testing (IT) and System Testing (ST), and non-functional testing includes User acceptance testing (UAT).

Validation testing is also known as dynamic testing, where we are ensuring that "we have developed the product right." And it also checks that the software meets the business needs of the client.

Verification and Validation Testing

Note: Verification and Validation process are done under the V model of the software development life cycle.

Difference between verification and validation testing

Verification

Validation

We check whether we are developing the right product or not.

We check whether the developed product is right.

Verification is also known as static testing.

Validation is also known as dynamic testing.

Verification includes different methods like Inspections, Reviews, and Walkthroughs.

Validation includes testing like functional testing, system testing, integration, and User acceptance testing.

It is a process of checking the work-products (not the final product) of a development cycle to decide whether the product meets the specified requirements.

It is a process of checking the software during or at the end of the development cycle to decide whether the software follow the specified business requirements.

Quality assurance comes under verification testing.

Quality control comes under validation testing.

The execution of code does not happen in the verification testing.

In validation testing, the execution of code happens.

In verification testing, we can find the bugs early in the development phase of the product.

In the validation testing, we can find those bugs, which are not caught in the verification process.

Verification testing is executed by the Quality assurance team to make sure that the product is developed according to customers' requirements.

Validation testing is executed by the testing team to test the application.

Verification is done before the validation testing.

After verification testing, validation testing takes place.

In this type of testing, we can verify that the inputs follow the outputs or not.

In this type of testing, we can validate that the user accepts the product or not.