Regression Testing in Jira: Plan Release Scope and Track Each Test Run
The Sherlock team
A payment-retry defect is fixed before a release, but the regression dashboard still mixes yesterday's passes with today's retest. The team can see a green result without knowing whether the corrected build was checked for duplicate orders, stock changes, or access-control failures. Release confidence depends on identifying both the selected behavior and the execution that produced each result.
Regression testing checks for adverse consequences of a change. Confirmation testing checks whether an original defect was fixed. ISTQB's Foundation Level syllabus distinguishes these activities because a successful reproducer retest does not establish that neighboring behavior remains correct.
The workflow below uses Jira Cloud for release work and Xray Cloud for test management. It assumes the app, relevant issue types, and permissions are already configured. The checkout release and results are illustrative, not a customer case or a report of tests performed here.
Table of Contents
Establish the Release Boundary in Jira
Start with the release's stories, bugs, and acceptance criteria. Jira versions group work intended for a release, and the Fix Version field can identify that work in a search. Save a project-and-version search as a filter so reviewers can return to the same selection rule. Confirm the returned work with the release owner rather than assuming every relevant change has been assigned correctly.
A filter is a live selection, not a frozen release manifest. Record the reviewed issue keys and the review cutoff alongside the filter. Add dependency upgrades, feature-flag changes, migrations, and configuration changes that affect the release even if they lack their own feature story. Revisit the inventory when scope changes.
Keep the release label separate from the deployed build. Several candidates can share Fix Version 4.2 while containing different fixes. Record an identifiable build or revision, the deployed services, relevant configuration, and test-data references for each execution. Jira versions are project-level, so a multi-project release also needs an explicit mapping between component versions and the integrated candidate.
Select Regression by Change, Dependency, and Business Risk
Assume release 4.2 changes discount calculation and payment retries, while a shared inventory adapter also changes. Ask which existing behaviors could fail through those dependencies. Add critical workflows whose consequences justify a check even when their implementation appears unchanged. A list containing only new stories would miss those regression obligations.
Use a reviewable matrix to connect change evidence with selected tests. In this illustration, each PAY issue key identifies a reusable manual Test in Xray Cloud. The selections below are planning decisions, not automatic coverage inferred by Jira.
Change or Exposure
Selected Test Keys
Behavior to Verify
Scope Decision
Checkout and retry coordinator changed
PAY-101, PAY-102
One intended checkout creates one order and capture; a timeout retry does not duplicate either
Include both as critical transaction checks
Discount calculation changed
PAY-103
The approved discount and final total remain correct at the selected boundary values
Include using independently derived expected totals
Shared inventory adapter changed
PAY-104
Reservation and release leave the expected available stock
Include because checkout depends on this adapter
Critical neighboring workflows
PAY-105, PAY-106
Another customer's order remains inaccessible; a settled order can be refunded correctly
Include isolation and downstream refund checks
Report export, with no identified changed dependency
None for this cycle
Export formatting is outside the selected regression scope
Exclude after review; retain the gap and owner
An exclusion needs a reason, an owner, and a trigger for reconsideration. For report export, record the reviewed dependency assumption and who accepts the remaining uncertainty. If the inventory adapter also feeds the export, that assumption fails and the scope must change. “Passed last release” is historical evidence, not a sufficient reason to exclude a newly affected path.
Prioritize using credible likelihood and impact, with mandatory gates for serious consequences such as unauthorized access. The guide to risk-based test prioritization develops that assessment when the team needs a scoring model. A priority score should support the selection rationale, not conceal an untested critical behavior.
Schedule prerequisites before dependent checks and reserve time for setup, investigation, retesting, and reporting. If a sandbox or specialist is unavailable, expose that constraint before assigning a full cycle. Reduce scope through an explicit risk decision rather than letting the last tests silently disappear when time runs out.
Turn the Selection Into an Xray Cloud Test Plan
The release inventory identifies delivery work; the test plan identifies the checks selected to evaluate it. Keep the reusable specifications separate from the records of what happened on each candidate.
Separate Jira Work From Xray Test Records
In Xray Cloud, a Test supplies the reusable specification. A Test Plan organizes selected Tests and their associated executions. A Test Execution is a Jira issue type containing the Tests scheduled for a particular context. Each associated Test has a Test Run inside that execution. The individual Test Run is an internal Xray entity, not a native Jira issue.
Use a static Test Plan for the reviewed release selection: add the six chosen Tests explicitly and retain their inclusion rationale and requirement references. Xray Cloud also documents dynamic plans based on saved filters as an Enterprise feature. Saving a Jira filter alone does not establish that the installed app will automatically populate a plan.
Align the requirements, Test Plan, and Test Executions with the intended release through Fix Version. Do not use a reusable Test's release field as the sole execution history or clone its definition for every release. The same Test can contribute to later selections while each execution records a different build and outcome.
Preserve the Specification That Each Run Uses
Before scheduling, review the steps, expected results, and supported preconditions for the selected Tests. Xray copies supported specification fields into a Test Run when the Test is added to an execution. Later changes to the Test do not automatically replace that copy.
The copy does not freeze every Jira field. Xray's Test Run documentation explicitly excludes the Test's summary, description, and general custom fields from replication. Put execution-critical instructions in supported specification fields and retain controlled references for anything else needed to interpret the result. Do not assume an old execution's displayed description is a historical snapshot.
A stable Test key plus its executed specification establishes a different reference from a release version. Explicit management of multiple Test versions is an Enterprise capability; the basic workflow should not assume it exists. The distinction between reusable cases, suites, and execution records helps keep these identities separate.
Treat changes to an existing run deliberately. Xray's Reset operation can erase recorded execution information, including status, evidence, and defects. Merge can change the copied steps and recalculate status. For a corrected build, create a fresh execution record instead of resetting the failed record to make it look clean.
Create a Distinct Execution for Each Required Context
For the example, select all six Tests for two required browser configurations. That produces twelve selected case-and-configuration combinations while retaining six reusable definitions. Use separate Test Executions for the two configurations so a pass in one does not stand in for the other.
Within the already configured Xray Cloud workflow:
Create an execution containing the reviewed Tests for one context and associate it with the release Test Plan. Check both relationships: linking an execution to a plan does not automatically add all its Tests to that plan.
Set the intended Fix Version and record the exact candidate in Revision or the team's controlled build reference. Identify the environment and browser/operating-system versions actually used.
Record relevant flags, service configuration, fixture version, and protected references to the actual data. Restore required starting states between attempts; a dataset label alone does not recreate a consumed transaction.
Assign the execution and individual Test Runs as needed. Confirm tester access, environment readiness, and evidence capture before starting.
Repeat for the second required context, retaining independent results. Use new executions when another build or testing round needs its own evidence.
Use Xray Test Environments to identify the execution context, but keep enough detail to reproduce it. A label such as Staging-Chrome needs the actual deployed build and browser version behind it. Review reports with release and environment fixed; a latest or consolidated result can answer a different question from what happened in a particular execution.
Agree on outcome meanings before recording results. Xray Cloud's execution documentation lists TO DO, EXECUTING, FAILED, and PASSED and permits custom statuses. Blocked in this example is an explicit reporting category, not a promise that every installation includes a default Blocked status. Use the site's existing configured mapping or a clearly recorded blocker reason while keeping the Test unpassed. Do not silently classify a blocked check as successful or hide it among completed checks.
A Jira execution issue reaching Done is also different from all its checks passing. Inspect the Test Run outcomes and supporting evidence rather than inferring success from the issue workflow.
Record Results and Retest Without Rewriting History
Suppose candidate RC1 produces the following illustrative results. Here, executed means completed with a Pass or Fail outcome. Blocked checks lack a completed outcome, while Not Run means the selected check has not been attempted. Neither category counts as passed.
RC1 Context
Selected
Executed
Passed
Failed
Blocked
Not Run
Staging-Chrome
6
5
4
1
1
0
Staging-Firefox
6
4
3
1
1
1
Total
12
9
7
2
2
1
The selected scope contains twelve combinations. Nine completed, seven passed, and two failed. Two are blocked by the refund sandbox, and the Firefox stock check has not run. The pass rate among completed checks is 7/9, approximately 77.8%; the execution completion rate is 9/12, or 75%. Those percentages describe this selection on RC1, not requirements coverage or overall release safety.
In both browsers, PAY-102 fails because retrying after the specified timeout creates a second capture. Keep the expected single capture, actual duplicate, build, input references, timestamps, and appropriate redacted transaction evidence on the failed runs. Link the results to the Jira defect so a developer can recover the reproducer and a reviewer can recover the affected executions. Record the refund sandbox blocker separately with an owner and next action.
After the fix arrives as RC2, review the changed code and dependencies before choosing a rerun. For an illustrative targeted round, select PAY-102 to confirm the fix, plus PAY-101 and PAY-104 to check related checkout and stock behavior, in both browsers. Create fresh executions for those selections and preserve RC1's failed records and defect links.
If all six RC2 combinations pass, report six selected, six executed, six passed for that targeted round. Do not report twelve RC2 passes by carrying forward the other RC1 results. Six combinations from the original release selection still lack fresh RC2 evidence, including the refund checks that were blocked.
The targeted selection is a starting proposal, not proof that the fix has no wider impact. A change to shared transaction handling may also affect discounts, permissions, refunds, or other consumers absent from the original selection. Expand regression when impact analysis warrants it, and retain the reason for any earlier evidence the release decision relies on. An unexplained rerun until green is not a replacement for investigating an inconsistent result.
Decide From Current Evidence and Residual Risk
Define exit criteria before executing, then assess them against the candidate being considered. A team's policy might require all mandatory transaction and isolation checks in the required contexts, no unresolved critical defects, and explicit acceptance of lower-priority exclusions. Those are example governance rules, not built-in Jira release guarantees.
In the illustration, six passing targeted RC2 checks do not meet that gate. Refund behavior remains unverified, and the rest of the required RC2 scope needs either fresh execution or a documented, justified evidence decision. Hold release approval until those obligations are resolved; a repaired retry defect does not waive them.
Give the release owner a compact decision record containing:
The candidate, environment/configuration references, selected scope, and cutoff.
Passed, failed, blocked, and not-run counts with their denominators and source executions.
Linked defects, confirmation results, and unresolved critical coverage.
Exclusions, residual uncertainty, the authorized decision-maker, and follow-up triggers.
The same review controls are useful outside this Xray implementation. Sherlock Test Management's current product description explains a human-reviewed scope proposed from Jira Fix Version, including reasons for exclusions, and an approved baseline kept separate from release-specific runs. For a checkout change, the team could review that proposed selection before recording outcomes. The Sherlock product workflow describes those controls; it does not imply an Xray integration or autonomous execution of the application. AI-proposed case changes still require human approval.
Before the next release review, choose one changed workflow and trace it through the requirement, selected Test, executed specification, candidate, result, and any subsequent confirmation. If the original failure and the corrected build's evidence cannot both be recovered, repair that record before relying on the dashboard's latest green status.
A checkout can display translated labels while corrupting a customer's name, hiding the confirmation button, or interpreting the delivery date incorrectly. Reviewing the translation…
A production-bug filter can return the right tickets and still produce the wrong defect leakage rate. If the denominator excludes defects fixed during testing,…
Sherlock
Manage Release Testing in Jira
Create traceable test cases, prepare release-specific test runs, and keep approved coverage current as the product changes.