Back

Two-Level Regression Testing

In Agile development, there are two levels of regression testing:

 Iteration regression ­– testing new features since the last release or within the iteration as well as parts of the application that could be affected.
 Full regression – testing all the core features of the product to ensure the product is working as expected before a release.

On choosing the coverage of the regression testing, the team must consider when the last full regression testing was. Having a regularly scheduled end-to-end regression testing can help the team manage their timeline better.

The following scheduling approaches can be adopted:

 Traditional Testing Approach – The team does an iteration regression after a sprint cycle. After some sprint cycles, the product goes through full regression testing.
 Delayed Week Approach – In this approach, the iteration regression is not confined within a timeline and can carry over to the following week. This works for teams that are still familiarizing themselves with the product.
 Delayed Sprint Approach – In the current iteration, the team performs regression testing on the features made during the previous iteration. This is a fairly common approach and makes do without the two levels of regression.

Risk-Based and Collaborative Regression Testing

If a team is short on time, they can choose to prioritize the test cases to execute during regression testing. In using a risk-based approach, the team categorizes their test cases into the following priorities:

 High – These are test cases that cover the critical, highly visible, or defect-prone features of the product. It is usually about 10% of all the test cases.
 Medium – Being around 30% of all the test cases, these cover exceptional conditions (boundary testing, negative testing, etc.).
 Low – These makeup 60% of the remaining functionalities, and are usually only involved when full regression is to be done.

Another approach that can be used is collaborative regression testing. The team can use a “regression board”, where changes done to the product are written on post-its and placed on a board. A team member can declare the prioritization of testing that change by how high (or low) they position the post-it.

Recommended Further Reading

The following materials may assist you in order to get the most out of this course:

Translate »