← Back to blog

Full Suite Over 15 Minutes? QA Teams' Copyable Regression Testing Plan

September 25, 2026
Full Suite Over 15 Minutes? QA Teams' Copyable Regression Testing Plan

The most effective regression testing plan uses a tiered structure, smoke, core, full, and change-specific suites, each triggered by risk level and wired into CI/CD gating. Teams adopting this model get faster feedback on every commit, targeted coverage on the code that actually changes, and a maintenance cadence that stops the suite from rotting. The rest comes down to selection rules and discipline.


TL;DR:

  • teams should establish a risk-based scoring framework to decide which test tiers to run for each code change, prioritizing critical features and defect history.
  • automated smoke and core suites should be integrated into CI pipelines to run on every commit and pull request, while full regressions are scheduled less frequently to optimize efficiency.
  • if the total regression suite runs under 15 minutes, retesting all tests may be more cost-effective than investing in test selection tools; beyond that, coarse-grained selection saves time.
  • regression test plans must clearly define scope, objectives, responsibilities, entry and exit criteria, and include change logs to ensure maintainability and accountability.
  • external help is available for teams lacking resources to build or maintain effective regression plans, with services offering automation, pipeline integration, and ongoing plan audits.

Requestum
Build More Reliable Software
Requestum combines software development, business analysis, and QA to help teams deliver high-quality applications tailored to their needs.
Explore Requestum

Table of Contents

What Belongs in a Regression Testing Plan?

A regression testing plan is a living document, not a one-time checklist. ISO/IEC/IEEE 29119-2 frames this as part of formal test-process documentation, and it names the components that separate a working plan from a folder of test cases nobody trusts. Skip any of these and you end up with a suite that either misses regressions or wastes hours re-running tests nobody needs.

Scope comes first. State plainly what the plan covers, which applications, modules, environments, and what it explicitly excludes, like exploratory testing or performance benchmarking. Scope creep is the single fastest way a regression suite turns into an unmanageable pile of redundant checks.

Objectives and success criteria follow. A plan needs numeric targets: time-to-feedback on a pull request, percentage of critical user flows covered, acceptable flaky-test rate. Without these, "the plan is working" becomes a matter of opinion.

Owners and responsibilities matter more than most teams admit. Someone has to own each tier. Someone has to be the automation lead who decides what gets scripted next. Someone has to approve test additions and removals, otherwise the suite grows without anyone accountable for its size or its blind spots.

Entry and exit criteria for each tier close the loop:

  • Entry criteria: what must be true before a tier runs (code compiles, dependencies are stable, environment is provisioned).
  • Exit criteria: what "pass" means for that tier (100% pass on smoke, 98% on core, documented waivers for known flaky tests).
  • Required artifacts: a test inventory mapped to features, run-time estimates per tier, and a record of which tests are automated versus manual.
  • Change log: a record of what was added or retired each release cycle, tied back to the reason.

Teams that write these fields down once tend to reuse the plan across projects instead of rebuilding governance from scratch every quarter.

How Should You Structure a Tiered Regression Testing Strategy?

Not every code change deserves a full regression run, and not every regression run deserves the same urgency. A four-tier model gives you a defensible way to match test depth to risk.

  1. T0 (Smoke). Five to fifteen minutes. Covers login, checkout, or whatever core paths would embarrass you if they broke. Runs on every commit.
  2. T1 (Core). Fifteen to forty-five minutes. Covers the primary user journeys and integrations tied to revenue or compliance. Runs on every pull request.
  3. T2 (Full). One to several hours. Covers edge cases, cross-browser or cross-device paths, and secondary integrations. Runs before merges to main or on release candidates.
  4. T3 (Change-specific). Variable duration. Targets only the modules touched by a given change, using dependency mapping or code-coverage data. Runs alongside T0 or T1 for faster targeted feedback.

Deciding which tier a change lands in works better with a scoring framework than with gut feeling. Score each change on five factors: business criticality of the affected feature, defect history in that area, size of the change's impact radius, current automation status, and expected execution time. A regression test suite selection template built on exactly these five criteria gives teams a repeatable way to map scores to tiers instead of arguing about it in standup.

In practice, a hotfix to a payment endpoint scores high on criticality and defect history, so it triggers T0 plus a change-specific T3 run against the payment module, even outside business hours. A minor UI tweak might only need T0 and T1. A major feature release or an infrastructure migration justifies the full T2 suite, no exceptions.

Automation priority follows the same logic: automate T0 first, since it runs constantly and blocks everyone if it is slow or manual. T1 comes next because it gates every pull request. T2 gets automated last, since it runs less often and tolerates some manual coverage in the interim.

Should You Retest Everything or Select Tests?

This is where most regression testing plans go wrong, and the research backs up why. A study comparing manual and automated test selection across 450 sessions from 14 developers found that manual selection chose more tests than automated selection in a majority of cases and fewer tests in a significant minority of cases. That is not a minor inefficiency. It means testers guessing at what to rerun waste significant CI time in most sessions and still miss coverage in over a quarter of them.

Regression test selection, or RTS, exists to replace that guesswork with analysis. It comes in two flavors:

  • Coarse-grained (class or module level): faster to compute, lower precision, but often cheaper overall. One empirical study found class-level RTS reduced cost in roughly 43% of the open-source projects analyzed, compared to method-level analysis that adds real overhead in exchange for tighter precision.
  • Fine-grained (method or control-flow level): more precise about which tests actually touch a change, but the analysis itself can eat into the time savings, especially in fast-moving CI pipelines.
  • Hybrid approaches: combine dynamic runtime data with static method-level analysis. Recent work on hybrid RTS shows this can cut selected tests and total run time significantly while still catching regressions safely, including from external library calls that pure static analysis tends to miss.

The decision rule is simpler than the research sounds: if your full regression suite runs under 15 minutes, retest-all is often cheaper than building and maintaining any RTS tooling. Past that threshold, coarse-grained selection usually pays for itself faster than a method-level rollout. And a low-effort heuristic, always rerunning last-failed tests first, catches a surprising share of regressions before you invest in anything more complex.

Pro Tip: Don't start with an RTS tool. Start with a scored selection matrix and a "run last-failed tests first" rule, measure how much CI time that saves over a month, then pilot a real RTS technique only on one stable subsystem before rolling it out further.

How Do You Wire Regression Tests Into a CI/CD Pipeline?

Pipeline gating is what turns a regression testing plan from a document into something that actually runs. CircleCI's guidance on regression automation recommends staging tests by speed and by domain, so slow suites never block a fast feedback loop unnecessarily.

A pattern that works for most teams:

  • Unit tests and T0 smoke run on every commit, no exceptions, typically under 10 minutes combined.
  • T1 core and T3 change-specific selection run on every pull request, gating the merge.
  • T2 full regression runs on merges to main or on release candidates, where a longer wait is acceptable.
  • Scheduled full runs (nightly or per sprint) catch anything that slips through selective gating, especially in suites too large to run on every merge.

Parallelization matters as much as tier design. Splitting tests across parallel workers using historical timing data, rather than an even file count, keeps wall-clock time predictable even as the suite grows. Containerized test environments and dependency caching cut setup time, which often dominates short pipeline runs more than the tests themselves.

Flaky tests deserve an explicit policy here, not silent tolerance. Quarantine a test after two inconsistent failures, track it separately, and fix or retire it within a set window, two sprints is a reasonable default, before it erodes trust in the whole pipeline.

Illustration of flaky test quarantine workflow

What Metrics Show a Regression Suite Is Healthy?

A regression suite degrades quietly. Nobody notices until a release ships with a bug that "should have" been caught. Tracking the right signals catches decay before it costs you a production incident.

  • Suite duration per tier: if T0 creeps past 15 minutes, something needs to move to T1 or get optimized.
  • Mean time to feedback: the clock from commit to result, not just total test run time, since queueing and setup often dominate.
  • Flaky test rate: the percentage of tests that fail intermittently without a code change; a rate above 2 to 3% of the suite is a signal to intervene.
  • Pass-rate stability: wide week-to-week swings in pass rate on stable code usually points to environment issues, not real regressions.
  • Critical-flow coverage: the percentage of business-critical paths with automated regression coverage, tracked separately from total test count.

Maintenance rules keep these metrics from drifting. Add a test whenever a new feature ships or a production bug gets fixed, both are cheap opportunities to prevent recurrence. Remove or downgrade a test that has not failed in 12 months and costs more to run than it is worth, or one that duplicates coverage elsewhere.

The manual-selection risk is real and measurable. Teams relying on ad-hoc manual test selection risk both outcomes at once: one study found selection was inconsistent in the majority of sessions studied, running too many tests in some cases and too few in others, without a reliable pattern either way.

A reasonable review cadence: smoke tests get reviewed every sprint, core suites per release, full suites quarterly, and the automation backlog monthly, so nothing sits untouched for a full quarter without a second look.

Copy This Regression Testing Plan Checklist

A regression testing plan does not need to be elaborate to be effective. It needs the right fields, filled in consistently.

  1. Header fields: project name, scope, exclusions, plan owner, last review date.
  2. Tier definitions: T0 through T3, with target duration and trigger condition for each.
  3. Selection scoring columns: business criticality, defect history, change impact, automation status, execution time, each scored 1 to 5.
  4. Pipeline triggers: which tier runs on commit, pull request, merge, and schedule.
  5. Owners: one name per tier, plus an automation lead responsible for the backlog.
  6. Metrics to collect: suite duration, flaky rate, pass-rate stability, critical-flow coverage.

A quick example: a change to a shipping-calculation module scores high on business criticality and moderate on defect history. That routes it to T1 core plus a T3 change-specific run against the shipping and checkout modules, executed on the pull request, owned by the QA lead assigned to that service.

First-week tasks for a team standing this up: inventory existing tests and tag them by tier, automate the T0 smoke suite if it is not already scripted, and set up basic duration and flaky-rate tracking before touching anything more advanced like RTS tooling.

Our Approach to Building Client Regression Plans

Regression testing plans are built with a business-analysis first approach, then automation. Before writing test cases, teams map which user flows carry the most business risk, an approach that keeps tiering decisions grounded in what actually matters to the client's revenue, not just what is easiest to script.

Requestum's automated testing practice typically starts with an automation-first smoke and core suite, wired directly into the client's CI pipeline, so feedback lands within minutes rather than at the end of a sprint. For clients shipping native or hybrid apps, mobile app testing work extends the same tiered logic across device and OS matrices, where regression risk multiplies fast if left unmanaged.

An agency has earned recognition including the Upwork Ukraine Award for Best Agency and multiple Clutch awards, credentials that reflect a broader software delivery practice, of which regression planning is one disciplined piece.

What tends to separate a durable regression plan from a brittle one isn't the tooling. It's whether someone owns the maintenance cadence and actually enforces it past the first release.

— Dmitry

Get Help Building or Running Your Regression Testing Plan

A practical alternative to hiring and training an in-house automation team from scratch is available: you can get a working regression testing plan, wired into your pipeline, without months of ramp-up.

Requestum

If your team lacks the bandwidth to build automation coverage, needs help integrating regression gates into an existing CI pipeline, or simply wants an audited plan delivered by people who do this daily, Requestum's Software Testing and Quality Assurance Services cover exactly that work: automated testing, tiered suite design, CI integration, and the business analysis that decides what actually deserves coverage. The team also supports broader delivery needs, from web development to dedicated QA engagements, so a regression plan built with Requestum fits into the rest of your development pipeline instead of sitting apart from it. Reach out through Requestum's QA and testing services page to scope a plan for your codebase and get a working tiered suite running against your pipeline.

Sources

This guidance draws on empirical research comparing manual and automated test selection, which documents how inconsistent manual selection tends to be in practice. CircleCI's practitioner guidance informs the pipeline gating and parallelism recommendations. ISO/IEC/IEEE 29119-2 supplies the formal definitions and process elements behind the plan components outlined above.

FAQ

What Is the Difference Between Smoke and Regression Testing?

Smoke testing is a fast, shallow check that core functionality works after a build, typically five to fifteen minutes covering critical paths like login or checkout. Regression testing is broader and deeper, verifying that recent changes have not broken existing functionality across the full application, and it usually runs as one of several tiers rather than a single pass.

How Often Should a Regression Test Suite Be Reviewed?

A practical cadence reviews smoke suites every sprint, core suites at each release, and full suites quarterly, with the automation backlog checked monthly. This prevents tests from sitting untouched long enough to become either redundant or silently broken.

Should I Automate All Regression Tests?

No. Automate in priority order, smoke tests first since they run constantly, then core tests that gate pull requests, then full-suite edge cases last. Some low-frequency or highly exploratory checks are often cheaper to keep manual than to script and maintain.

What Is Regression Test Selection, and Do I Need It?

Regression test selection, or RTS, is a technique for running only the tests affected by a given code change instead of the entire suite. It is worth adopting once your full suite exceeds roughly 15 minutes; below that, retest-all is often cheaper than building and maintaining selection tooling.

Can Requestum Help Build a Regression Testing Plan for My Team?

Yes. Requestum's QA and testing services include tiered regression plan design, automation implementation, and CI pipeline integration for teams that lack in-house capacity or want an audited plan delivered end-to-end. Pricing depends on scope and is available on request.