qTest Jira Integration: Linking Test Management to Your Development Workflow

qTest Jira Integration: Linking Test Management to Your Development Workflow

qTest integrates with Jira to close the gap between issue tracking and test management. Instead of manually copying defect details between tools or maintaining spreadsheets that link test cases to requirements, the integration keeps both systems synchronized. This guide covers setup, the bi-directional sync model, and practical workflows for QA teams that live in both tools.

What the Integration Does

The qTest-Jira integration operates in both directions:

Jira → qTest:

  • Jira issues (user stories, epics) appear as requirements in qTest
  • Test cases in qTest link to Jira issues, creating traceability
  • Changes to Jira issue status reflect in qTest requirement coverage

qTest → Jira:

  • Defects found during testing are created as Jira issues from within qTest
  • Test execution results can update Jira issue status
  • Test run details (pass/fail, steps, attachments) are included in the Jira issue

The core value is traceability: you can look at any Jira story and see which test cases cover it and whether they've passed.

Setting Up the Integration

Prerequisites

  • qTest Manager (cloud or on-prem) with Jira integration enabled in your license
  • Jira Cloud or Jira Server (Data Center) with API access
  • Admin access to both systems

Step 1: Configure the Jira Connection in qTest

  1. In qTest, navigate to Settings → Integrations → JIRA
  2. Enter your Jira instance URL
  3. Provide credentials — for Jira Cloud, use an API token (not your password):
    • Jira → Account Settings → Security → API tokens → Create token
  4. Click Test Connection to verify
  5. Save the configuration

Step 2: Map Projects

Each qTest project connects to one or more Jira projects:

  1. Open your qTest project → Settings → JIRA Integration
  2. Select the Jira project to connect
  3. Configure the issue type mapping:
    • Which Jira issue types to import as requirements (typically: Story, Epic, Task)
    • Which qTest defect types map to which Jira issue types when creating defects

Step 3: Initial Requirement Import

After the project mapping is set, import existing Jira issues as requirements:

  1. In qTest → Requirements tab → Import from JIRA
  2. Filter by sprint, label, or JQL query to select which issues to import
  3. Choose import mode: one-time snapshot or live sync
  4. The import creates requirement nodes in qTest that mirror the Jira issue hierarchy (Epic → Story → Sub-task)

JQL filter example — import only issues in the current sprint:

project = MYPROJ AND sprint in openSprints() AND issuetype in (Story, Task)

Step 4: Configure Sync Rules

In the integration settings, configure what triggers synchronization:

  • Field sync: Which Jira fields update qTest requirements when changed (status, assignee, priority, custom fields)
  • Bi-directional or one-way: Most teams use Jira as the source of truth for requirements, so one-way sync (Jira → qTest) is common
  • Sync frequency: Polling interval for updates (real-time webhooks are available for Jira Cloud)

Linking Test Cases to Jira Issues

Once requirements are imported, link your test cases:

From the Test Case

  1. Open a test case in qTest
  2. Requirements tab → Link to Requirement
  3. Search by Jira issue key (e.g., PROJ-123) or browse the requirement tree
  4. Select the issue and save

From the Requirement

  1. In qTest → Requirements, open a requirement (Jira issue)
  2. Linked Test Cases tab shows all test cases that cover this requirement
  3. Click Add Test Case to link additional tests

Bulk Linking

For large test suites, use the Requirements Matrix view:

  1. Reports → Requirements Coverage Matrix
  2. Drag test cases onto requirement cells
  3. Changes save immediately

Running Tests and Updating Jira

When a test cycle runs:

  1. Execute test cases as normal in qTest
  2. For failed tests, create a defect directly from the failed test step:
    • Click Create Defect in the execution results
    • A Jira issue is created pre-populated with: test case name, failed step, actual vs. expected result, environment details, and a link back to the qTest execution
  3. The Jira issue appears in your team's backlog immediately

Automatic Status Updates

Configure qTest to update Jira issue status based on test results:

  • All linked test cases pass → transition Jira issue to "Ready for Release" (or your equivalent status)
  • Any linked test case fails → keep issue in "In Progress" or transition to "In Testing"

This requires configuring the Jira workflow transitions in the integration settings. The exact status names must match your Jira workflow.

Traceability Reports

The most useful output of the integration is coverage reporting:

Requirements Coverage Report

  • Shows every Jira issue imported as a requirement
  • For each issue: number of linked test cases, last execution status, coverage percentage
  • Export to CSV or view in qTest dashboard

Traceability Matrix

  • Grid view: Jira issues on one axis, test cases on the other
  • Each cell shows the execution status of that test-to-requirement link
  • Immediately visible which requirements have no test coverage

Testing from Jira (Jira panel)

With the qTest for Jira app installed (available on Atlassian Marketplace):

  • A qTest panel appears on each Jira issue
  • Shows linked test cases and their last execution status without leaving Jira
  • QA status is visible to developers and product managers in the tool they already use

Working with Jira Sprints

A common pattern: import requirements at sprint start, test during the sprint, close out with a coverage report.

Sprint start workflow:

JQL: project = PROJ AND sprint = "Sprint 23" AND issuetype = Story
→ Import to qTest
→ Create a test cycle named "Sprint 23"
→ Link relevant test cases
→ Assign test cases to team members

Sprint close workflow:

  1. Run the Requirements Coverage report filtered to "Sprint 23" requirements
  2. Export as evidence for the sprint review
  3. Any failed test cases with open defects → Jira backlog automatically updated via sync

Defect Tracking

Defects created from qTest test executions land in Jira as new issues. The integration pre-fills:

  • Summary: [qTest Defect] {Test Case Name} - {Failed Step Name}
  • Description: Step-by-step execution log, actual vs. expected result
  • Labels: qtest-defect (configurable)
  • Priority: Mapped from qTest defect priority
  • Custom fields: Any qTest defect fields mapped to Jira custom fields in settings

Once in Jira, defects follow the normal Jira workflow — assigned, prioritized, fixed, verified. When a fixed defect is re-tested in qTest and passes, the Jira issue can auto-transition to "Done" if you've configured that rule.

Common Issues and Fixes

Requirements not syncing: Check the sync configuration — the Jira project must be mapped in qTest project settings, and the Jira user account used for the connection must have read access to the Jira project.

Defects creating but missing fields: Jira required fields that qTest doesn't populate will block issue creation. In qTest defect configuration, map all Jira required fields or remove the "required" constraint in Jira.

Duplicate requirements after re-import: qTest deduplicates by Jira issue key. If you're seeing duplicates, check that you're not importing from multiple project mappings that overlap on the same Jira project.

Webhook delays: For Jira Cloud with real-time webhooks, changes should reflect in qTest within seconds. If sync is delayed, check the webhook log in Jira (Settings → System → WebHooks) for delivery failures.

When the Integration Adds Value

The integration is worth the setup time when:

  • The team uses Jira for sprint planning and requirements, and QA needs visibility into what's been tested
  • Stakeholders want to see test coverage in Jira without switching tools
  • Defect creation currently involves copy-pasting details between two systems

It's less valuable when:

  • Requirements live outside Jira (Confluence, Word, spreadsheets) — you'd need to maintain two sources of truth
  • The QA team is small and manual tracking in one tool is sufficient
  • Tests are exploratory and don't map cleanly to specific Jira issues

The integration handles the structural link between "what we planned to build" and "what we tested." It doesn't automate judgment about test coverage quality — that remains a QA responsibility.

Read more

Start now free