Since Xray uses issue types in order to map the different testing entities, you can utilize it to implement workflow mechanisms.
This is unique and powerful because it allows you to have full control of your testing process by controlling the transition of statuses in these issue types.
You can then also invoke post-functions when certain statuses are met, such as notifying certain stakeholders or generate detailed reports.
The following table summarizes possible use cases for implementing Jira workflows on top of Xray issue types.
Issue Type | Workflow usage scenarios |
---|---|
Pre-Condition |
|
Test |
|
Test Set |
|
Test Execution |
|
Test Plan |
|
Using Jira workflows is not mandatory, but they can be used to enhance your process. General recommendations when using them:
- Don’t overcomplicate the workflows, but respect your internal process.
- Add "reviewing statuses” where appropriate (at specification and execution).
- Define global workflows for your test-related issues and also for your requirements.
Xray provides some workflow control mechanisms that are able to integrate with Jira workflows. All these settings can be found in Global Preferences.
It's possible to:
- Disallow executions of Tests with workflow statuses
- Disallow executions with workflow statuses
- For Test Executions in specific status
- Set the "In progress Test Execution workflow status"
- After the first run (i.e., after one the Test Runs in that Test Execution has run)
- Set the "Resolved Test Execution workflow status"
- When all runs are in final status (i.e., after all Test Runs that in that Test Execution have been run and have a final status)
- Set the Resolution for Resolved Test Execution, when the "Resolved Test Execution workflow status" is set
Please note
The following workflows being presented are just examples. Implement a workflow that is adapted to your own needs.
Tests and Pre-Conditions
Recommendations
- Have a status for “deprecated” Tests; you can then disallow executions for Tests in this status, in Xray settings.
- Have an initial stage for the specification (e.g., “draft” or “new”) and then another status whenever it’s ready to be used.
Test Sets
In Test Sets, workflows can be used to identify that a given Test Set is fully specified or not. They can also be used (e.g., by companies/departments providing testing services) as a way to manage the implementation and the delivery of the Test cases associated with that Test Set.
Recommendations
- You can eventually implement similar workflows for Tests, Pre-Conditions and Test Sets.
- In more conventional scenarios, it may be preferable to keep this workflow as simple as possible.
Test Executions
Recommendations
- To keep it simple, you can have an initial status (e.g., “new”), another when it’s in progress (e.g., “in progress”) and then another when it’s finished (e.g. “closed”).
- If your Test Executions needs approval or you have a reviewing state, you can then disallow executions for it, in the Xray settings.
- You may need to have an interim status if you need to review the results of a Test Execution. For Test Executions, it may be quite appropriate for both manual and automated testing (due to flaky tests).
Test Plan
Recommendations
- Have an initial status (e.g., “new”), another when it’s in progress (e.g., “in progress”), and then another when it’s finished (e.g., “closed”).
- You may need to have an interim status if you need to review the results of a Test Plan.