Integration with Jira Server (DC)
The integration with Jira Server (DC) implies you are going to use Allure TestOps Jira plug-in.
This article has two parts – the integration itself and the installation, configuration and troubleshooting of Allure TestOps Jira plug-in.
Integration with Jira Server (DC)
Generally, the approach to the integration is described here. Jira integrates with Allure TestOps the same way.
Integration recap
- Create (get/generate/you name it) the secrets (credentials) on an external system to use their API.
- Add the required integration on Allure TestOps global level (you need to be an administrator or have an administrator nearby).
- Add the required integration on the project level and provide credentials (secrets) you got on the step 1.
Getting credentials
Allure TestOps allows you using either the combination of username and password (Jira admins and Security officers do not like this option) or a personal access token. Please read this article to understand how to generate PATs in Jira Server (DC).
Global level
You need to have
ROLE_ADMIN
authority to configure Allure TestOps instance on the global level.
- Go to User menu > Administration > Integrations
- In the upper-right corner click Add integration
- Search for Jira Server (DC)
- Click on the Jira Server (DC) banner
- Provide the name of the integration
- URL of Jira Server without
http(s)://
might be a good idea for the name
- URL of Jira Server without
- Provide Jira's URL to Endpoint field
- Finalise by clicking Add integration.
Next you'll see the following screen:
Here, you can test the connection (good idea!), update the parameters, or even delete the integration (which is bizarre considering you just added it).
Project level
You need to be a project owner to perform the following actions.
On the level of a project you need to add the created integration to the project you work in, and provide the credentials (secrets) to authorize Allure TestOps to be able to send API requests to Jira instance.
Setup the integration in your project
- Go to the project's settings.
- Go to the Integration section
- Locate the Jira Server (DC) integration you want to add.
- Click Add integration.
- In the modal window enter the credentials you got on previous steps.
- Test the connection.
- Finalise the Integration settings by clicking on Add integration.
Allure TestOps Jira plug-in
- Allure TestOps plugin for Jira Cloud.
Prerequisites
You need to have a ready to use integration with your Jira instance:
Integration with an instance of Jira issue tracker is to be added globally
- URL of the instance is to be provided
Integration is to be added on a project level with real credentials.
Allure TestOps plugin for your Jira type is added to your instance from Atlassian market.
If your Jira instance uses https for the access to Jira UI, then you must use secure cookies on Allure Test side.
- Check your configuration parameters at gateway service
- Locate the parameters responsible for secure cookies
ALLURE_SECURE_COOKIE
in.env
file of docker compose deploymentsecureCookies
for Helm chart'svalues.yaml
ALLURE_SECURE
in gateway configuration file of packages deployment
To use this integration you need to have enabled account on Allure TestOps side.
- The account can be with any authority level (ADMIN, USER, AUDITOR).
Your browser must allow usage of 3rd party cookies.
Configuration of Allure TestOps plugin
You need to have either Jira administrator privileges or a Jira administrator close to you to configure Allure TestOps plugin for Jira.
Find the plugin
- Click gear icon in the upper right corner.
- Select manage apps
- Find Allure TestOps plug-in
- Click Configure
Configure the plug-in
- Select new config
- Add your Allure TestOps URL, e.g.
https://allure.testops.xyz
(of course you need to add a real one) - Release of Allure TestOps is to be 4
- The integration ID is the system ID of the integration you added on the global level (under Administration section).
- The required ID always stands before the integration's name.
- If you want to limit the usage of plugin by specific Jira's groups, then check appropriate check-box.
- Select the groups allowed to use Allure TestOps plugin. The rest of the groups won't see Allure TestOps plugin's elements on Jira issues pages.
- If you want to limit the usage of plugin by specific projects, then check appropriate check-box.
- Select the projects where you need to see the data from Allure TestOps.
- Save the settings.
Config will be saved with the name of Allure TestOps server URL.
Troubleshooting
- Allure TestOps plug-in for Jira is an iframe showing the information directly from Allure TestOps, it does not store any data in Jira database, ergo it requires direct connection to Allure TestOps instance.
- The end user who expects to see the information from Allure TestOps needs to have an account (
ROLE_AUDITOR
will suffice) in Allure TestOps. - Allure TestOps plug-in for Jira uses Allure TestOps cookies to authenticate a user in Allure TestOps and show the data from Allure TestOps
- The end users who expect to see the information from Allure TestOps needs to be authenticated in Allure TestOps in the same browser.
Normal work
If all the settings are correct, you will see the following in your Jira issues.
Connection works, there are no test cases and/or launches linked to an issue
In case all is fine, but no there are no test cases and/or launches linked to current issue, you'll see the notification from Allure TestOps server No test cases
for linked test cases section, and No launches
for the launches section.
Connection works, there are test cases and/or launches linked to an issue
In case all is fine, and there are test cases and/or launches linked to current issue, you'll see the list of those:
Action is required
Connection works, current user is not logged in to Allure TestOps - Login buttons
If current user is not logged in to Allure TestOps, then the plugin will show fresh green Login button(s). You have a very difficult task — you need to decide which one you want to click.
After the decision and action are made, you will be redirected to Allure TestOps instance login page, where you need to login using your existing credentials.
Then you need to go back to Jira and refresh the page.
Allure TestOps Configuration is required
Connection works, current user is logged in to Allure TestOps - Login buttons do not disappear
If current user is logged in to Allure TestOps and the plugin still shows fresh green Login button(s), this could mean you haven't fulfilled the item #4 of the prerequisites.
Please go back to the prerequisites, check item #4 and configure Allure TestOps as described.
Browser settings alteration is required
Connection works, current user is logged in to Allure TestOps - Login buttons do not disappear
If previous solution (ALLURE_SECURE
) still does not affect the behaviour, it's time to check your browser settings.
If current user is logged in to Allure TestOps and the plugin sill shows fresh green Login button(s), and the configuration contains all needed ALLURE_SECURE
stuff, this could mean your browser does not allow the usage of 3rd party cookies (these are required the integration to work).
Safari settings
You need to uncheck the following parameter:
Google Chrome
In Google Chrome and generally in all Chromium based browsers the following needs to be allowed for the integration to work properly.
FireFox
The following settings in FireFox need to be checked and altered to allow 3rd party cookies.
Infrastructure troubleshooting is required
If you see the following or similar with an error where is is not expected, we have the worst case then
Infrastructure issues troubleshooting
When we're talking about the infrastructure there are usually 3 places to check:
- Allure TestOps environment (firewalls, reverse proxies and other network elements processing the traffic)
- Network (generally traffic between the Allure TestOps infrastructure and Jira infrastructure could be blocked)
- Jira environment (firewalls, reverse proxies and other network elements processing the traffic)
Trying to identify the faulty party - direct connection
All the information you see in the jira plug-in is actually an iframe generated on Allure TestOps side, so if we exclude items 2 and 3 and check if you can access the iframe content directly and there are no errors in Allure TestOps:
Open developer tools of your browser.
Locale one of the elements related to Allure TestOps content
Locate the element on the page
Copy the src data of the iframe, so the string you have will look like follows:
https://your-allure-testops-instance/iframe/issue-tracker-testcases?integrationId=5&issueKey=AE-1
- AE-1 is the ID of jira issue, it'll be specific to your settings
integrationId=5
has to be the correct reference to the integration ID configures at Allure TestOps side.
Paste the copied string to browser's address bar. Check what your browser shows.
What your browser shows
- If you see a message saying there are no test cases or no launches or yo u see a list oof test cases or launches related to this Jira issue, then settings are correct on Allure TestOps side.
Good:
Also good:
If you still see sad face or an error message, you first need to check you've provided correct integration ID (integration must exist and it has to be an issue tracker).
If Issue tracker ID is correct, you need to check the network rules and make sure the connections to Allure TestOps are allowed.
If direct connection works
Here all the fun starts. You need to engage a network admin or a DevOps or whoever is responsible for the network and infrastructure on Jira side.
You need to check if the communication between Jira and Allure TestOps is allowed.
What if we have Jira Cloud?
In this case the infrastructure, network rules, white and black lists of IP addresses or FQDNs or even whole 2nd level domains are managed by Atlassian company and you need to file a tech support request to Atlassian.
We have experience with some cases when whole 2nd level domains (.tech for example) were blocked by Atlassian with no explanation.
Sync the lifecycle of a defect with Jira issue life cycle
Allure Test allow you syncing the life cycle of a bug in Jira with a defect linked to a bug.
The sync is done via webhooks Jira triggers on Allure TestOps side.
Webhooks
- This operation requires administrative permissions on Jira side.
- This operation requires ROLE_ADMIN permissions on Allure TestOps side.
Generate webhooks only if you are going to sync the life cycles of the bugs with the defects.
Generation of a webhook
- In the user menu
- Jump to the Administration section of Allure TestOps instance
- Go to the integrations
- Locate the integration with Jira instance.
- Go to webhooks tab
- Click Create webhook.
- Copy whole webhook string and send this webhook it to your Jira administrator.
Configuring webhook on Jira side
- In your Jira instance jump to settings (gear icon).
- Select System.
- Scroll down to ADVANCED and select Webhooks.
- Click +Create Webhook.
- Name your webhook.
- Add the webhook URL generated in Allure TestOps.
- Select Issue updated event. Other events aren't needed.
- Additionally, you can use JQL to watch for the events for a specific project to minimise the amount of requests.
- Save your webhook.