Zephyr for JIRA Test Management Plugin for Jenkins


About the Plugin

Zephyr for JIRA Plugin for Jenkins integrates Jenkins and Zephyr for JIRA Server version. This plugin creates test cases and publishes test results in JIRA for JUnit test cases in Jenkins. It supports publishing maven surefire format test results (JUnit and TestNG).


This guide will cover how to create and execute test cases automatically in Zephyr for JIRA using this plugin; this includes

  1. Downloading and installing the plugin
  2. Adding JIRA Severs in the Jenkins global settings
  3. Configuring a standard Jenkins Job
  4. Configuring Zephyr for JIRA Plugin job as a post build action
  5. Triggering the job and publishing results in JIRA

Requirements

  1. Zephyr for JIRA Server version 2.6.0 (Build 26002096), 2.5.4 (Build 25401885), version 2.5.3 (Build 25301883) or version 2.5.2 (Build 25201808) installed and enabled on JIRA server
  2. ZAPI version 1.5 installed and enabled on JIRA server
  3. Jenkins installation

Downloading and installing the plugin

You can download the plugin from Jenkins repository or from Zephyr utilities repository. To install the plugin follow the instructions on Jenkins portal – How to install plugins

Adding JIRA Servers in Jenkins global settings

After installation configure Jenkins global settings to establish connection with JIRA Server(s). Follow the below steps

  • Launch Jenkins and access via a web browser
  • Click on "Manage Jenkins" from the Menu as illustrated in the below screenshot

  • Click on "Configure System"

  • Locate the section "Zephyr for JIRA Configuration" and click "Add". You can add more than one JIRA Server by clicking on "Add" button

  • Enter JIRA Server URL and user credentials. Note that the User Name and Password must be that of a user with appropriate permissions to project(s). Click on "Test Configuration" to validate connection to JIRA Server

  • Click on "Save" button to save the configuration changes

Configuring a standard Jenkins job

A job in Jenkins defines a sequence of tasks for Jenkins to perform. When a job is triggered, Jenkins looks for an Ant script or Maven build file and runs it. It also provides options to define post-build tasks. Follow the example below to configure a standard job and add a post build action:

  1. Create a new Jenkins job by clicking the "New Item" link found on the menu


  1. Give a name for your job, check the box "Freestyle project" and click on "OK" button

  1. To configure the job you just created, click the <job name> on the Jenkins home page

  1. Click the "Configure" link

  1. Choose "Subversion" option in the "Source Code Management" section

  1. Enter the subversion URL where the target project resides and press Tab


Note: User credentials needs to be setup to access SVN server. Click on "enter credential" link to set it up if you see below error

  1. To add a build step, locate the "Build' section and select "Invoke top-level maven targets" from the "Add build step" dropdown

  1. Select "clean package" as your Goals

  1. The plugin requires JUnit test result. Locate the "Post-build Actions" section and select "Publish JUnit test result report" from "Add post-build Actions" dropdown

  1. Enter the path to the test report. In the example below the location is "Proj1\target\surefire-reports/*.xml" where Proj1 is the target project

Configuring Zephyr for JIRA Test Management plugin as a post build action

In order to publish results in Zephyr for JIRA, define another post-build action

  1. Select "Publish test result to Zephyr for JIRA" from "Add post-build Actions" dropdown

  1. Configure Zephyr plugin job

      1. Select the JIRA URL from the dropdown. (Servers configured in the Jenkins global configuration are available here to select). This automatically pulls in projects, versions and cycles
      2. Select the Project Name from the dropdown. This re-populates the versions
      3. Select the Version from the dropdown. Selecting a version fetches all its cycles
      4. Select either an existing Cycle from the dropdown or create a new cycle
      5. For existing Cycle the default Cycle Duration will be that of existing cycle in Zephyr and Cycle Name Prefix will be of the format "Automation_<Date><Time>" stamp
      6. For new cycle you have option to select Cycle Duration from the dropdown and to edit default cycle prefix name "Automation". In the absence of a cycle prefix name "Automation" is used for new cycles
      7. Click "Save"

Triggering the job and publishing results in Zephyr


To trigger a job manually, click "Build Now" link on the menu. This builds the project and publishes the Junit result

Jenkins creates the test cases in the selected JIRA Project

Finally, Jenkins assigns these test cases to the selected cycle and executes all the tests

License

This plugin is open source. It follows the Apache License version 2.0 (<http://www.apache.org/licenses/>)
It allows:

  • Freely download and use this software, in whole or in part, for personal, company internal, or commercial purposes;
  • Use this software in packages or distributions that you create.

It forbids you to:

  • Redistribute any piece of our originated software without proper attribution;
  • Use any marks owned by us in any way that might state or imply that we www.getzephyr.com endorse your distribution;
  • Use any marks owned by us in any way that might state or imply that you created this software in question.

It requires you to:

  • Include a copy of the license in any redistribution you may make that includes this software;
  • Provide clear attribution to us, www.getzephyr.com for any distributions that include this software

It does not require you to:

  • Include the source of this software itself, or of any modifications you may have made to it, in any redistribution you may assemble that includes it;
  • Submit changes that you make to the software back to this software (though such feedback is encouraged).

See License FAQ <http://www.apache.org/foundation/licence-FAQ.html> for more details.

Feedback