Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

testing
software testing

What is the end to end testing?

Behzad Ahmad

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

End to end testing tests the full functionality of a system from the beginning to the end to determine whether or not the system is providing the required functionality. Basically, the purpose of end to end testing is to identify the system dependencies and ensure that the data is fully integrated between various systems.

End to end testing is executed after the functional testing and system testing.

components of end to end testing

Benefits of end to end testing

Some of the benefits of end to end testing are listed below:

  • It builds test cases that are more numerous and comprehensive.

  • It ensures the product is working correctly.

  • It detects errors before the shipment of the product.

End to end testing lifecycle

There are four major components of the end to end testing lifecycle:

  • Test design

    This identifies the test specifications, test case generation, risk analysis, usage analysis, and scheduling tests.
  • Test planning

    This specifies the key tasks, schedule, and resources.
  • Test execution

    We use this to execute the test cases and testing documents results.
  • Requirements analysis

    We use this to analyze test results and evaluate testing. This can also make more testing if needed.

Metrics for end-to-end testing

Some of the common test cases metrices are discussed below:

  • Test case preparation status:

    We use this to compare the progress of test case scenarios with the already planned test cases.

  • Test progress tracking:

    This tracks the results of test cases weekly, specifying how many have been completed, how many succeeded, and how many failed.

  • Defects status and details:

    We use this to track the status of the defects on weekly basis (how many defects have been resolved this week, how many defects are left, etc.).

  • Environment availability:

    This is defined as the total number of operational hours and the actual number of hours that are scheduled for testing.

RELATED TAGS

testing
software testing

CONTRIBUTOR

Behzad Ahmad
Copyright ©2022 Educative, Inc. All rights reserved

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

Keep Exploring