---
title: "Planning tests from an \"aim\" perspective"
canonical: "https://docs.getxray.app/space/XRAYCLOUD/44565588/Planning%20tests%20from%20an%20%22aim%22%20perspective"
format: markdown
---
> ℹ️ This page will be archived soon.
> ℹ️ 
> ℹ️ Its content has been consolidated into a [new page](https://getxraydocs.atlassian.net/wiki/spaces/XRAYCLOUD/pages/659259394).



<span style="color: #000000">Instead of creating one Test Plan for your release, you may create multiple Test Plans to track different Tests.</span>

<span style="color: #000000">This may be useful if you want to have visibility on how certain groups of Tests are progressing.</span>

<span style="color: #000000">You may create different Test Plans for:</span>

- <span style="color: #000000">Tests related to new features</span>
- <span style="color: #000000">regression testing (i.e., for Tests related with features implemented in previous versions)</span>
- <span style="color: #000000">security-related Tests</span>
- <span style="color: #000000">performance-related Tests</span>
- <span style="color: #000000">compliance-related Tests</span>
- <span style="color: #000000">other non-functional Tests</span>


> ℹ️ **Please note**
> ℹ️ 
> ℹ️ <span style="color: #000000">This approach is independent of the methodology being used. You can use the tips described next to extend your methodology and gain additional visibility over specific Tests.</span>


<span style="color: #000000">Let's dive into two specific examples that are traditionally used in most teams and can be approached differently using the classic Test Plan approach or the new Dynamic Test Plans feature available with </span>[**<span style="color: #000000">Xray Enterprise</span>**](https://marketplace.atlassian.com/apps/1229688/xray-enterprise?hosting=cloud&tab=overview)**<span style="color: #000000">.</span>**

<span style="color: #000000">The examples will show a possible approach to define a Regression Test Plan and a Test Plan to validate new features using the classic or Dynamic Test Plans approach.</span>

> Macro (toc)

# <span style="color: #000000">Examples using Test Plans</span>

<span style="color: #000000">In the classic approach, the tester creates empty Test Plans for Regression Tests and to test the new feature.</span>

## <span style="color: #000000">Regression Test Plan</span>

<span style="color: #000000">The regression test plan list usually changes the most out of all the test lists, and testers need to manage which Tests are part of it in every iteration.</span>

<span style="color: #000000">In the traditional approach, the tester creates a new Test Plan; in this example, we will call it a "Regression Test Plan."</span>


![image](media://d9b26351-a8df-4440-a6d8-9a558cfcbd73)

<span style="color: #000000">As the tester does this at the beginning of the iteration, it is expected that some Tests do not exist yet, so the Test Plan will remain empty.</span>

![image](media://badb73dd-09d3-4bba-aaaa-32a32e9d2a3f)


<span style="color: #000000">As each Test is created, the tester must manually add those to the Regression Test Plan, or at any moment later on based on some criteria.</span>

> Macro (inline-media-image)

> Macro (inline-media-image)




<span style="color: #000000">In this case, anytime you need to add or remove Tests, you must always do it manually.</span>

## <span style="color: #000000">Test Plan for the new feature</span>

<span style="color: #000000">When the team is working towards a delivery, new features are created and need to be tested; in most cases, it matters to understand if the new feature is appropriately validated and if it is a feature that the team thinks should be part of the Regression Tests they should add it to the Regression Test Plan.</span>

<span style="color: #000000">Understanding if the feature tests are successful is of the most value to a team; this can be achieved by creating a Test Plan that will hold all Tests covering that new feature.</span>

<span style="color: #000000">When the team starts working, the tester often creates several Test Plans, one of which is the Test Plan that will hold all the feature-related Tests. The Test plan is created without any Tests, and the tester must manage it as the Tests are being created.</span>

<span style="color: #000000">For example, the tester creates a new Test Plan to hold all the Tests covering the Authentication feature.</span>

![image](media://a1e96e0d-a68f-4ce5-a56b-acdc8df0cdc6)


<span style="color: #000000">As the Tests still need to be created, the Test Plan will be left empty.</span>

![image](media://db3605a9-24e9-4811-8d7a-bd47bb57c1ae)

<span style="color: #000000">When Tests are created, the team will need to add those Tests to the Test Plan manually. The same thing happens if they need to remove Tests that do not make sense anymore for this Test Plan - they must be removed manually.</span>

![image](media://744c438b-3c08-44e1-8a6e-67bf06bef617)

# <span style="color: #000000">Examples using Dynamic Test Plans</span>

[**<span style="color: #000000">Xray Enterprise</span>**](https://marketplace.atlassian.com/apps/1229688/xray-enterprise?hosting=cloud&tab=overview)**<span style="color: #000000"> </span>**<span style="color: #000000">introduces a new feature to dynamically manage the Tests that are part of a Test Plan; this functionality is called </span>**<span style="color: #000000">Dynamic Test Plans.</span>**

<span style="color: #000000">In the classic approach, the Tests must exist to be added to the Test Plan, and if you want to remove some from the Test Plan, you have to do it manually also.</span>

<span style="color: #000000">Let's look at the same examples as before (Regression Test Plan and Feature Test Plan) and see how you can take advantage of Dynamic Test Plans in these situations.</span>


> ℹ️ **Dynamic Test Plan is a Xray Enterprise Feature**
> ℹ️ 
> ℹ️ 
> ℹ️ ![image](media://d192925c-c590-47ef-b976-0fb304882228)
> ℹ️ 
> ℹ️ 
> ℹ️ <span style="color: #000000">Dynamic Test Plans is a feature of </span>[**<span style="color: #000000">Xray Enterprise</span>**](https://marketplace.atlassian.com/apps/1229688/xray-enterprise?hosting=cloud&tab=overview)<span style="color: #000000">. If you do not have Xray Enterprise installed, the </span>**<span style="color: #000000">Dynamic Test Plans are not available </span>**<span style="color: #000000">in the Test Plan issue, and it is impossible to configure dynamic test lists. When installing Xray Enterprise for the first time, please re-enable Xray to load all properties from Xray Enterprise.</span>

## <span style="color: #000000">Regression Test Plan</span>

<span style="color: #000000">Remember that the Regression Test Plan is usually the Test Plan that needs more management to make sure we add and remove the correct Tests to prevent possible regressions.</span>

<span style="color: #000000">We start exactly like the classic approach by creating a new Test Plan.</span>

![image](media://7f3a40ef-7da2-46a2-bc0b-c40ff1f4b583)

<span style="color: #000000">The difference from the classic behavior is how we define what Tests are part of the Test Plan.</span>

<span style="color: #000000">For this example, and to keep things simple as there are many ways to approach this, we are considering that all Tests meant for Regression are labeled "Regression". You can use other criteria as long as they can be searchable using a Jira filter and JQL.</span>

![image](media://c2451153-487f-4d8f-85e4-ee107773ea7c)


<span style="color: #000000">This allows us to create a JQL Filter to list all Tests that are part of the Regression. </span><span style="color: #000000">Once the filter is tuned to your needs, save it and give it a name.</span>

![image](media://4a7bb8ef-534f-4e73-9d1e-cfb0efb8f498)

> ℹ️ <span style="color: #000000">We can but we don't need to explicitly filter by the issue type Test because the Test Plan will only consider Tests to be added to it.</span>


<span style="color: #000000">On the Test Plan issue screen, we can configure it to use a "Saved Filter", implicitly making it dynamic</span>*<span style="color: #000000">.</span>*

![image](media://345eac47-b559-4318-b260-e2fe2b32758a)

![image](media://10a04dbd-8741-479c-959b-dcdffffa46fe)


<span style="color: #000000">You can see that the Tests that appear in the filter screenshot above are automatically added to the Test Plan.</span>

![image](media://a45a52f7-b111-4959-8c70-2155f2995f25)


<span style="color: #000000">Now whenever you add the Label "Regression" to a Test, it will be automatically added to the Test Plan. It will be automatically removed from the Test Plan whenever you remove that label.</span>

> ℹ️ <span style="color: #000000">Once again, using the Labels to filter out Tests is an example; you can use whatever makes the most sense to you in the JQL filter.</span>


## <span style="color: #000000">Test Plan for new feature</span>

<span style="color: #000000">For this example and to keep things simple, one Story represents a new feature, and we want to have the list of all Tests linked to it.</span>

![image](media://d6451897-c06b-4e53-914e-7bfc5fd613fa)

<span style="color: #000000">We have created a JQL filter named "login_tests," listing all Tests that cover the requirement story XT-5 via "issueTests" syntax.</span>

![image](media://da3a408f-97b1-446a-a6ad-dd2b39ad5c5b)

<span style="color: #000000">When creating the Dynamic Test Plan to validate the feature, we use the previously created filter, as shown below.</span>

![image](media://fe022c33-eff5-4979-ac76-aa65f1c48075)

![image](media://097ab955-6827-4334-9e40-aad9b9e1f694)

<span style="color: #000000">The Tests are automatically added to the Test Plan and are dynamically managed; every time the team adds or removes the link between tests and the requirement User Stories, the tests will be automatically added to/removed from the Test Plan.</span>

![image](media://3e84f5f1-152e-43c7-b40c-eded9be6fa40)


# <span style="color: #000000">Additional tips for building Dynamic Test Plan queries</span>

<span style="color: #000000">In general, we use saved filters and JQL to obtain the tests we need. Some examples follow ahead.</span>


> ℹ️ **JQL features in Jira Cloud**
> ℹ️ 
> ℹ️ JQL in Jira Cloud has some limitations compared with Jira Data Center; Atlassian has been improving JQL support in Cloud but there are still some gaps; some of these can be overcome with other Jira apps as seen ahead. To achieve better results, we advice to you use [ScriptRunner app](https://marketplace.atlassian.com/apps/6820/scriptrunner-for-jira?hosting=cloud&tab=overview) (you may also be able to implement this using another app with similar capabilities) to create enhanced filters.


## <span style="color: #000000">Tests assigned to a specific component</span>

### Context

- <span style="color: #0e101a">A tester wants to create a Test Plan with all the tests assigned to some component.</span>

### How to

1. Use a JQL similar to the following one.
  1. **Sample JQL**

## <span style="color: #000000">Tests that cover requirements assigned to a specific component</span>

### Context

- <span style="color: #0e101a">A tester wants to create a Test Plan with all the tests covering some components' requirements.</span>

### How to

To be able to implement this use case, we'll use ScriptRunner Enhanced Search feature of the [ScriptRunner app](https://marketplace.atlassian.com/apps/6820/scriptrunner-for-jira?hosting=cloud&tab=overview) <span style="color: #172B4D">(you may also be able to implement this using another app with similar capabilities).</span>


1. In **Apps** > **ScriptRunner Enhanced Search** create a filter (e.g., "tests_for_login_component") for the following JQL query. To filter by status just add the clause "... and status = '...' ".
  1. **Sample JQL**
  2. > Macro (inline-media-image)
2. Use the previous saved filter on the Test Plan configuration, as a regular Jira filter.

## <span style="color: #000000">Tests that cover high-priority requirements</span>

### Context

- A tester wants to create a Test Plan with all the tests that cover high-priority requirements.

### How to

To be able to implement this use case, we'll use ScriptRunner Enhanced Search feature of the [ScriptRunner app](https://marketplace.atlassian.com/apps/6820/scriptrunner-for-jira?hosting=cloud&tab=overview) <span style="color: #172B4D">(you may also be able to implement this using another app with similar capabilities).</span>


1. In **Apps** > **ScriptRunner Enhanced Search** create a filter (e.g., "tests_for_stories_high_priority") for the following JQL query. To filter by status just add the clause "... and status = '...' ".
  1. **Sample JQL**
  2. > Macro (inline-media-image)
2. Use the previous saved filter on the Test Plan configuration, as a regular Jira filter.


## <span style="color: #000000">Tests that cover "risky" requirements</span>

### Context

- A tester wants to create a Test Plan with all the tests that cover requirements having a certain risk level associated to them, set using a specific custom field.


Note that organizations can implement risk management in different ways.

### How to

To be able to implement this use case, we'll use ScriptRunner Enhanced Search feature of the [ScriptRunner app](https://marketplace.atlassian.com/apps/6820/scriptrunner-for-jira?hosting=cloud&tab=overview) <span style="color: #172B4D">(you may also be able to implement this using another app with similar capabilities).</span>


1. In **Apps** > **ScriptRunner Enhanced Search** create a filter (e.g., "tests_for_stories_medium_risk") for the following JQL query.
  1. **Sample JQL**
  2. > Macro (inline-media-image)
2. Use the previous saved filter on the Test Plan configuration, as a regular Jira filter.

## Manual (step-based) tests

### Context

- A tester wants to create a Test Plan with all the step-based test cases to be performed manually.

### How to

1. Use a JQL similar to the following one.
  1. **Sample JQL**

## Automated tests

Depending on how teams implement automated tests, filtering them can be slightly different. In this example we assume that teams are using Generic tests as a way to abstract automated tests.

### Context

- A tester wants to create a Test Plan to track all the test automation results.

### How to

1. Use a JQL similar to the following one.
  1. **Sample JQL**

## Gherkin/BDD (e.g., "Cucumber")  tests

### Context

- A tester wants to create a Test Plan with all the Cucumber test scenarios.

### How to

1. Use a JQL similar to the following one.
  1. **Sample JQL**


## Tests in a given workflow status

### Context

- A tester wants to create a Test Plan with all tests that have been reviewed and approved.

### How to

1. Use a JQL similar to the following one.
  1. **Sample JQL**