Xray supports integration with Continuous Integration tools, thanks to its REST API.
Xray team has made some add-ons for Jenkins and Bamboo that make this integration easy. While we're working on making them also compatible with Xray Cloud, you can still integrate your CI pipeline using the instructions herein provided.
CI in a project using Cucumber tests
In this case, you will have to follow these steps:
Authenticate
Export Cucumber, Gherkin base tests from Jira
- Run the tests
- Import the results back to JIRA
Authenticate base on the credentials associated with a given API Key
token=$(curl -H "Content-Type: application/json" -X POST --data @"cloud_auth.json" https://xray.cloud.xpand-it.com/api/v1/authenticate| tr -d '"')
Export Cucumber tests
token=$(curl -H "Content-Type: application/json" -X POST --data @"cloud_auth.json" https://xray.cloud.xpand-it.com/api/v1/authenticate| tr -d '"')
Unzip the tests (Cucumber .feature files)
unzip -o features/features.zip -d features/
Run the tests and save the report
cucumber -x -f json -o report.json
Import the test results to Jira
token=$(curl -H "Content-Type: application/json" -X POST --data @"cloud_auth.json" https://xray.cloud.xpand-it.com/api/v1/authenticate| tr -d '"')
CI in a project using non-Cucumber tests
Sometimes you may be using some automated tests that are not Cucumber. You may even be using your own custom test automation framework.
In this scenario, Test entities must have already been created in Jira. Tests can either be Manual or Generic ones, depending if they're structured (composed of steps) or not.
In general, you will have to follow these steps:
- Run the tests and generate a report in Xray JSON format (you will need to know the keys of the Tests in Jira beforehand)
- Import the results back to Jira