Since Xray 2.0, Xray integrates with Agile to give you a flexible way of viewing, managing and reporting some Xray issue types.
Agile boards are an excellent way to visually keep track of the progress of project's tasks.
Usually, you use Agile boards to manage sprint-related issues, such as user stories, tasks and defects.
You can extend the usage of Agile boards to make them also testing-aware.
Agile boards are great, but they do not replace other types of reports where more information may be consulted and analyzed.
Using Xray issues in Agile boards
Since Xray uses Jira issue types for most of its entities, in theory, you're able to include them in your boards. However, the reason may be different for each one of them.
Having in mind that Tests and Pre-Conditions are like test case templates, including them in a board does not make sense unless you want to track the specification progress, in case you have a specific workflow implemented for that purpose. The same applies to Test Sets. Some may prefer to use one or more Task issue(s) for dealing with the specification effort of Tests and/or Test Sets.
Including individual Test Runs would not be that useful. Since a Test may have multiple runs, your board would be over-populated. Moreover, Test Runs are not issue types so they cannot be included in Agile boards.
Test Executions may be assigned to a sprint and may be tracked on a board. However, this may not scale if Continuous Integration is being used, due to the potential huge amount of Test Executions that may be created.
Sub-Test Executions are an excellent way to visually identify the associated Test Executions that validate a given requirement, since they're created as sub-tasks for the requirement issue and will appear accordingly in the board. A limitation is that a Sub-Test Execution is a sub-task of only one issue, in this case a requirement. Sometimes, this may not be applicable because it may be necessary to have Test Executions with Tests associated with multiple requirements.
A Test Plan tracks a group of Tests, regardless of the number of Test Executions for a given version of the SUT. Test Plans may be used to group the Tests in the scope a given sprint and thus, consolidate the test results.
In sum, you may extend Agile boards for testing purposes to address two points:
- specification & organization
- planning & execution
Sub Test Execution
Configuring Agile Board (Active Sprint and Backlog)
In order to make sure that only the relevant issues appear (e.g. Stories, Bugs, Test Plans and not Tests) in the Backlog and in the Active Sprint, you need to configure the Board properly.
You may configure your Agile Board right from the screens of the Backlog / Active Sprint, using the project shortcuts on the left side bar.
You need to go Board > Configure.
Then, choose General and edit the Saved Filter.
Update the query of the saved filter to contain the relevant issues.
The exact filter to use depends on the issue types you have on your project; a possible filter could be:
project = CALC AND issuetype in (Story, Epic,Bug, Task,"Test Plan", "Test Execution", "Sub Test Execution") ORDER BY Rank ASC
A typical concern with Agile boards is having them as clear and as "non-polluted" as possible, so you can focus on what's important.
Some relevant and high-level information may be obtained from specific custom fields associated with requirements, or (Sub) Test Executions, or Test Plans. These fields may be included in the board cards.
Note that you are limited on the number of fields (3) you're able to include in each card on the board.
Next, you may find some possible scenarios for integrating testing into your Agile boards, although you're free to adapt each one to your needs.
Requirement Status on Agile Board
You can add the Requirement Status custom field to the requirement issues in the Active Sprint. It’s actually a useful feature provided by Jira. It gives you the ability to add custom fields in both views: Active Sprint and Backlog. Adding certain Xray custom fields, such as the Requirement Status, may be a good for your testing teams because it provides a quick overview of the current statuses of the requirement issues.
To add the Requirement Status to the Agile Board, perform the following steps:
Step 1: Open the Agile Board you wish to add the Requirement Status.
Step 2: Click the Board button and then click the Configure button.
Step 3: Click the Card Layout and add the Requirement Status to the Backlog and Active Sprint.
Step 4: The Backlog View and the Active Sprint View now have the Requirement Status custom field.
- Backlog View
- Active Sprint View
As a suggestion, you may also add the Test Environments custom field. It may be useful to have different Sub-Test Executions to test the requirement in different environments.
Quick view of Executions for Requirements from Agile Board
Creating a Sub-Test Execution from the Requirement Issue will let you track related executions on the Agile Board, so you will see all work that needs to be done to “finish” a requirement, either by developers or testers.
You can have a quick view of all test executions of a requirement, directly from the Jira Agile board, as long as the executions are created as Sub-Test Execution issues.
Test Plans as a way to consolidate test results
You may create one or more Test Plans and associate them with a given Sprint.
By including the Test Plan Status custom field, you are able to see right away the overall progress of your Test Plans.
You may also include the Test Execution Status custom field in your cards; thus, Sub-Test Executions progress may be promptly visualized.
Requirement Status may also be included in the card configuration, allowing you to assess the coverage status of the requirements present on the board.