In this section:
Overview
You can configure Jtest to associate tests with a broad range of development artifacts, such as requirements, defects, tasks, and feature requests.
To successfully associate unit tests with artifacts, you need to:
- Enable the artifact association property.
- Specify issue tracking tags and configure their URL associations.
Use the tags in the Javadoc
Enabling Artifact Associations
Ensure the report.associations
property is set to true
to enable associations with artifacts. This also enables/disables test associations in the HTML report.
report.associations=true
Specifying Issue Tracking Tags
The following tags for artifact types are associated by default when report associations is enabled:
- pr (defects)
- fr (enhancements)
- task
- asset
- req (user stories)
You can use the issue.tracking.tags
property to define any number of additional tracking tags. Separate tags names with a comma:
issue.tracking.tags=tag1,tag2,tag3
Configuring Issue Tracking Tags and URL Associations
You enable generating a link to the association in the HTML report by configuring the report.assoc.url.tag{n}
option:
report.assoc.url.tag1=[URL]
URLs can contain [%ID%]
or ${id}
variables, which will be replaced by issue identifiers. For example:
report.assoc.url.tag1=http://bugzilla.company.com/show_bug.cgi?id=[%ID%]
Enabling Test Details
You can enable or disable showing test details in the HTML report:
report.contexts_details=[true | false]
The report.contexts_details property must be set to true to enable showing associations.The product’s property file is preconfigured to enable showing test details.
See Report Settings for additional information.
Using Javadoc Tags
Use Javadoc tags to associate unit tests with artifacts.
Place the tag in the Javadoc to associate it with your tests. The tags used in the Javadoc should be preceded by a @ character.
/** * @bug 12345 * @pr 223344 * @tag1 5533 */ @Test public void testSomething() { ... }
You can also associate a tag with a class. As a result, it will be associated with all the tests within this class. In the following example, tag 9876 is associated with both tests within the Test class, whereas tag 111 is associated only with the testSomething2 test:
/** * @tag 9876 */ public class Test { testSomething1() { ... } /** * @tag 111 */ testSomething2() { ... } }
Multiple Associations
You can associate one tag with more than one artifact. Separate multiple associations with a comma that is not followed by a space character.
/** * @task 1234,2345 */ @Test public void testSomething() { ... }
If you separate the tasks with a comma and a white space, the test will be associated only with the first listed artifact. In the following example, the test is associated only with task 1234:
/** * @task 1234, 2345 */ @Test public void testSomething() { ... }