Proofline documentation

How to set up and use Proofline: Test Management for Jira on Jira Cloud. Proofline is built by Pledona, an independent Atlassian Marketplace Partner, and runs entirely on Atlassian Forge.

On this page: Setup · Test cases and folders · Test cycles and runs · Traceability and coverage · CI import · CSV and Excel import · Limits · Help

Setup

  1. A Jira admin installs Proofline from the Atlassian Marketplace (pending review).
  2. Open any company-managed or team-managed project and choose Proofline Tests in the project sidebar. Tabs: Test cases, Test cycles, Coverage and Import.
  3. Optional, for CI: a Jira admin opens Settings > Marketplace apps > Manage apps > Apps > Proofline CI import, creates an API token and copies the endpoint URL. The token is shown once; only its SHA-256 hash is stored. Rotate or revoke it on the same page.

Proofline is free for up to 10 users. Data is stored in Forge storage for your site and removed when the app is uninstalled.

Test cases and folders

Test cycles and runs

  1. In Test cycles, click New test cycle, give it a name and an optional version, and pick a folder or selected test cases. Every test starts as not run.
  2. Open the cycle and run each test step by step. Mark steps and tests pass, fail, blocked or skipped, add a comment and defect keys, then move to the next test.
  3. The progress bar and results column summarize the cycle. CI imports appear as cycles too.

Traceability and coverage

CI import (JUnit, Playwright, Cypress)

Post the raw report file to your site's web trigger with the API token:

curl -sf -X POST "$PROOFLINE_URL?project=ABC&format=junit&cycle=Nightly" \
  -H "Authorization: Bearer $PROOFLINE_TOKEN" --data-binary @results.xml
ParameterMeaning
projectRequired. Jira project key.
formatjunit (Jest, pytest, Maven, Gradle, Go and most runners), playwright (JSON reporter: npx playwright test --reporter=json > results.json) or cypress (mochawesome JSON).
cycleTest cycle name to record results in.
versionOptional version for the cycle.
folderFolder for automatically created test cases. Default Automated.
createMissingSet to false to skip tests that do not match an existing test case.
suiteFoldersSet to true to create subfolders from suite names.

Results match existing test cases by automation key. Responses are JSON: 200 with import counts, 400 for a bad request, 401 for a missing or invalid token, 402 when the subscription is not active, 405 for a method other than POST. Store the URL and token as secrets in your CI system.

CSV and Excel import format

In the Import tab, upload a CSV (comma, semicolon or tab separated) or Excel file. The first row is the header. Column names are matched without case, spaces or punctuation:

ColumnAlso accepted
Title (required)Name, Test case, Test case name, Summary
FolderPath, Folder path, Section. Use / or > for nested folders.
Priority, Objective, PreconditionDescription, Preconditions
StepAction, Step action, Test step, Steps
DataTest data, Step data
ExpectedExpected result, Step expected result, Result
IssuesIssue keys, Requirements, Coverage, Links, Linked issues
LabelsTags
Automation keyAutomation, Automated test

One row per step: a row with a title starts a new test case, and rows below it with an empty title add more steps. Separate multiple issue keys or labels with commas, semicolons or spaces. Up to 5,000 rows per import. Example:

Title,Folder,Priority,Step,Data,Expected,Issues,Labels
Checkout with card,Web/Checkout,High,Open the cart page,,Cart page is shown,ABC-12,smoke
,,,Pay with a test card,4242 4242 4242 4242,Order is confirmed,,

TestRail and Zephyr Essential CSV exports use compatible column names. See the migration guide.

Limits

Help

See Support, the Privacy Policy and Security, or contact us. We reply within one business day (Pacific Time).