TestKase
TestKase
|Docs
Test ManagementIntegrationsJira

API Integration

Connect TestKase to Jira Cloud via API to search Jira issues, link them to test cases, post coverage comments, and refresh issue status on demand.

Overview

The Jira API integration lets you connect a TestKase project to your Jira instance so you can search Jira issues, link them to your test cases, and keep a lightweight traceability bridge between test management and issue tracking. When you link a test case to a Jira issue, TestKase posts a comment on that issue listing the linked test cases, so Jira users can see test coverage without leaving Jira. Issue status is pulled from Jira on demand whenever you refresh it.

Search and link

Search your Jira issues on demand and link them to test cases as requirements

Coverage comments

Linked test cases are posted as a comment on the corresponding Jira issue

Manual status refresh

Pull the latest Jira issue status into TestKase whenever you refresh

Easy setup

Connect with an access token in minutes

Stored with the project

Your API token is saved on the TestKase server as part of this project's integration configuration and used to call the Jira Cloud API

Non-destructive

Disconnect anytime, data is preserved

Prerequisites

Before setting up the Jira integration, make sure you have the following ready:

For Jira Cloud

  1. An active Jira Cloud account with a project containing issues.
  2. An API token generated from your Atlassian account.
  3. Your Jira email address (used alongside the API token for authentication).
  4. The instance URL of your Jira site (e.g., https://your-org.atlassian.net).

Generate a Jira Cloud API token at https://id.atlassian.com/manage-profile/security/api-tokens. Click Create API token, give it a label (e.g., "TestKase Integration"), and copy the token immediately.

Jira Cloud only. TestKase authenticates with an Atlassian account email plus an API token and uses the Jira Cloud REST API. Jira Server and Jira Data Center -- including self-hosted instances on a private network -- are not supported, and the same applies to the Jira Plugin and the Chrome Extension.

TestKase Permissions

You must have Project Admin or Owner role in the TestKase project to configure integrations. See User Permissions for details.

Setup

In TestKase project settings, requirement and defect integrations are configured separately. To search and link Jira issues from your test cases, configure the requirement integration:

  1. In TestKase, open the Requirement Integration page for your project.
  2. Under API Integrations, click Connect on the Jira card.
  3. Enter your Instance URL -- https://your-org.atlassian.net.
  4. Enter your Email address -- the email associated with the API token.
  5. Paste your API Token.
  6. Click Next. TestKase validates the credentials and fetches your Jira projects.
  7. Select the Jira project you want to link to this TestKase project.
  8. Select the issue types that should be searchable as requirements (for example Story, Task, Bug). This step is required -- only the issue types you tick here will appear when you search Jira from a test case, and you can change the selection later with Edit.
  9. Click Save to complete the connection.

Do not skip the issue-type selection. TestKase builds its Jira search from the issue types stored on the connection, so a connection saved without any selected returns no results when you search.

Step 1 also shows a "What type of Jira do you use?" choice between Cloud and Enterprise. Leave it on Cloud -- the setting is displayed but never sent or acted on, and TestKase supports Jira Cloud only.

Defect integration is configured in its own section, separately from requirement integration. Configuring the two independently lets you point requirements and defects at different trackers if you need to.

The Jira Project Dropdown Shows One Page

TestKase asks Jira for a single page of projects, so the dropdown holds the first 50 projects the token's account can browse (Jira's default page size). The label above the dropdown tells you how many were returned. If it says 50 and your project is missing, the token user almost certainly has access to more projects than that -- use an account with access to fewer Jira projects, or ask a Jira admin to narrow that account's project permissions, and reconnect.

One Jira Project per TestKase Project

A Jira project can be connected to one TestKase project at a time. If it is already connected somewhere else, saving fails with "This jira-api project is already configured with another testkase project." Reset the connection on the other TestKase project first.

A Jira project is identified by its Jira site plus its project ID. Every Jira site numbers its projects from the same starting point, so two different companies' Jira projects can share an ID; they never block each other. Only the same project on the same Jira site counts as "already configured".

The Token Account Must Be Able to Comment

Linking a test case posts a coverage comment on the Jira issue in the same operation. If the token's Jira account cannot add comments to that project, the link itself fails -- nothing is saved and you see an error. Grant the account the Add comments permission on the Jira project before you start linking.

Linking Requirements

Once connected, you can search your Jira project's issues from within TestKase and link them to test cases as requirements. There is no automatic bulk import and no continuous background sync -- issues are searched on demand and linked individually.

How Linking Works

  • Search on demand -- From a test case, search your connected Jira project's issues by keyword. TestKase queries Jira live and returns matching issues (key, summary, and status). Only issues whose type you selected during setup are returned -- other issue types are not searchable. Results arrive 10 per page, newest issue first, and your typing is sent about 0.4 seconds after you stop. The picker's column sorting reorders only the page you are looking at, not the whole result set -- narrow the search instead of sorting to find an older issue.
  • Matching -- The keyword is matched against the issue's text and against the issue key, so pasting a key such as PROJ-123 finds that issue directly.
  • Link an issue -- Select an issue to link it. The Jira issue summary is stored as the requirement title and the Jira issue key (e.g., PROJ-123) is stored as a clickable reference.
  • Coverage comment -- When you link a test case to a Jira issue, TestKase posts a comment on that issue listing the linked test cases. Linking or unlinking additional test cases updates or removes that comment. This is the only change TestKase writes back to Jira. Coverage comments are posted only by the API Integration -- projects connected through the Jira Plugin or the Chrome Extension do not post comments back to Jira.

Linked Requirement Behavior

  • Linked requirements display a Jira badge showing the issue key. Clicking the badge opens the Jira issue in a new tab.
  • Jira remains the source of truth for the linked issue's title and status.
  • You can link test cases and defects, add attachments, and assign requirements to folders within TestKase -- these fields are managed locally.

Use search keywords to find exactly the issues you want to link -- for example, an epic name or a label -- so you only pull in the issues that are relevant to the test case in front of you.

Traceability from Test Cases

From the test case detail view, you can link test cases to Jira issues. This creates a traceable connection between your Jira backlog and your test suite.

When a test case is linked to a Jira issue, TestKase automatically posts a comment on the corresponding Jira issue showing the linked test case details. This gives Jira users direct visibility into which tests cover each issue -- without leaving Jira. Unlinking a test case updates or removes that comment accordingly.

Refreshing Issue Status

TestKase does not receive live webhooks or run a background sync. Instead, the status of a linked Jira issue is refreshed on demand:

  • Use the refresh action to pull the current status of a linked issue from Jira into TestKase.
  • The raw status value from Jira is stored as-is. There is no automated transformation of Jira statuses or priorities into TestKase values.
  • Refresh whenever you want the latest status -- for example, before reviewing coverage or building a report.

Refresh works on one test case at a time -- it updates the issues linked to the test case you have open. There is no project-wide refresh, so status across a large project is only as current as the last time someone refreshed each test case.

🚧 Coming soon -- automatic, real-time bidirectional sync (webhook-driven status updates and field/priority mapping between Jira and TestKase). Today, status is pull-only and refreshed manually.

If the API Token Expires or Is Revoked

The API token is stored with the project's connection and is used for every call. When it stops working, the symptoms differ by action:

ActionWhat you see
Searching Jira from a test case"Invalid Jira credentials. Please contact your admin to verify the email and API token."
Linking a test case to an issueThe link fails and nothing is saved
Refreshing a linked issue's statusNo error. The refresh quietly leaves the previously stored status in place

To recover: generate a new API token in your Atlassian account, click Edit on the Jira integration card, paste the new token, and save. Your existing links, coverage comments and requirement records are untouched -- only the credential changes. The same applies if the Jira account itself loses access to the project: restore its permissions and no re-linking is needed.

Defect Push

🚧 Coming soon -- pushing defects from TestKase to create new Jira issues. The API integration does not yet create issues in Jira. For now, defects are tracked in TestKase (see Built-in Defects), and you can link test cases to existing Jira issues for traceability.

When available, defect push is planned to create a new Jira issue from a TestKase defect, establish a cross-reference link between the two, and map defect priority and status to the corresponding Jira fields. This capability is not yet built.

Management

Edit Connection

To update your integration settings (project or credentials):

  1. Open the requirement integration (or defect integration) configuration in project settings.
  2. Click Edit on the integration card.
  3. Modify the fields you want to update (e.g., update the access token).
  4. Click Save to apply changes.

Disconnect (Reset)

To completely remove the integration:

  1. Click Reset on the integration card.
  2. Confirm the disconnection.

What happens when you disconnect:

  • Issue search and status refresh stop working for this project.
  • Existing linked requirements are preserved in TestKase -- they are not deleted.
  • Cross-reference badges on existing items continue to link to the Jira URL.
  • Comments already posted on Jira issues remain in Jira.
  • You can reconnect to the same or a different project at any time.

Troubleshooting

▶I see an 'Authentication failed' error

This usually means your access token is invalid or expired. Steps to resolve:

  1. Verify the token is still valid in your Jira account settings.
  2. Ensure you are using the correct email address -- the one associated with the API token.
  3. Generate a new token and update the integration in TestKase.
▶I can't see my Jira project in the dropdown

Your access token may not have access to that project. Common causes:

  • The token user does not have permission to access that Jira project.
  • The project is archived or deleted in Jira.
  • The token scope may be limited. Create a new token with full project access.
▶Searching Jira from a test case returns nothing

Search is restricted to the issue types you selected during setup. If no issue types are stored on the connection, the search returns no results at all. Click Edit on the Jira integration card, confirm that at least one issue type is selected, and save.

▶Search fails after I select an issue type whose name contains a space

TestKase builds its Jira query from the issue-type names you selected, and it does not quote them. An issue type whose name contains a space -- Service Request, Test Execution, IT Help and most custom types -- makes the query invalid, so every search from a test case fails, not just searches for that type.

Until this is fixed, click Edit on the Jira integration card and select only issue types whose names are a single word (Story, Task, Bug, Epic). If you need a multi-word type, raise it with support.

▶A linked issue's status looks out of date

TestKase does not sync status in the background. Use the refresh action on the linked issue to pull its current status from Jira. If refresh fails, verify the integration is still connected and the access token has not expired.

▶The coverage comment did not appear on my Jira issue

TestKase posts a comment on the Jira issue when you link a test case to it. If the comment is missing:

  • Confirm the token user has permission to add comments to that Jira project.
  • Confirm the integration is still connected and the token has not expired.
▶Can I connect multiple Jira projects to one TestKase project?

No. Each TestKase project supports one external integration connection at a time (per integration type). To work with multiple Jira projects, create separate TestKase projects for each. This keeps the traceability clean and avoids cross-project confusion.

▶What happens to linked requirements if I disconnect?

Linked requirements remain in TestKase as regular requirements. The Jira badge continues to link to the Jira URL, and no further status refresh is possible until you reconnect. No data is lost during disconnection.

▶Can I use the same Jira token for multiple TestKase projects?

Yes. The same Jira API token can be used across multiple TestKase projects. Each project connects to a different Jira project using the same token, as long as the token user has access to all the Jira projects.

▶Is Jira Service Management supported?

A Jira Service Management project appears in the project dropdown and can be connected, as long as the token user has access to it. There is no JSM-specific handling: service request-specific fields are not mapped.

Be aware of one practical limit. Most JSM issue-type names contain a space -- Service Request, IT Help, Emailed request -- and TestKase cannot search issue types whose names contain a space (see the FAQ above). If every issue type in your JSM project is multi-word, searching that project from a test case will not work.

Questions

▶Are there other ways to connect Jira?

Looking for alternative connection methods? See the Jira Plugin (Forge app that works inside Jira) or the Chrome Extension for lightweight browser-based access.

▶Refresh works but nothing syncs

A revoked or expired token does not make refresh fail visibly -- the status you see is simply the last one TestKase managed to fetch, which may be weeks old. If linked statuses have stopped moving, check the token before assuming the issues have not changed.

▶My token expired — how do I fix it?

If your access token has expired, editing the integration to provide a new token is the fastest way to restore the connection without losing your existing links.

▶I already use the built-in requirements

If this project's requirement integration is currently Built-in, connecting Jira deletes your built-in requirements. After you pick the Jira project, TestKase shows a Data Loss dialog. Pressing Continue resets the existing integration first -- and resetting a Built-in integration permanently deletes every requirement and requirement folder in the project (on the Defect Integration page, every built-in defect). The deletion happens before the new connection is saved, so cancelling the rest of the wizard does not undo it. Export first, and read Built-in before you switch. Replacing one external connection with another does not delete anything -- only Built-in data is destroyed.