Skip to content
The docs are now organized by product area. Old links still work. Report a broken link

Migrate from Allure TestOps

Move test cases from Allure TestOps to Qualflare with a CSV export, and keep your Allure adapters: upload allure-results with qf. What maps and what stays.

Last updated

You can move test cases from Allure TestOps to Qualflare by exporting a CSV file from Allure TestOps and importing it in Import; cases, nested scenario steps and statuses move, while past launches, results and attachments stay in Allure TestOps.

Automated tests that write Allure results keep their adapters: qf uploads the allure-results directory they write (Keep your Allure results).

What migrates from Allure TestOps

This is what Qualflare makes of each part of an Allure TestOps export:

Allure TestOpsIn Qualflare
Test casesTest cases, with their status as the state when it maps
Scenario steps, nested by indentationAction steps, nested up to 5 levels
Expected result lines and the expected result columnExpected Result steps
PreconditionsOne Precondition step per line
Suite labels, or epic, feature and storyOne suite named by the path, such as Billing > Checkout > Saved cards
Severity, layerPriority, Test Type
Past launches, results, attachments and other custom fieldsNot imported

Before you begin

Editor+ · project (requires the Editor role or higher in the project)
  • The Allure TestOps cases count toward your workspace's test case limit, 200 test cases on Starter, and each suite path toward the suite limit, 10 test suites. See What happens at a limit.
  • Import never changes the cases a project already has: a case whose name already exists in its suite is skipped.
  • One file holds up to 1,000 cases, 200 suites and 5,000 steps, and 20 MB. Export a large project in parts. See Limits.
  • Keep the export file: Qualflare deletes its stored copy when the import finishes.

Export from Allure TestOps

Qualflare reads an Allure TestOps CSV export with one row per test case. Menu paths differ between tools and versions, so follow the source tool's own export guide.

Allure TestOps means the test management product. Allure Report, the open-source reporter, has no test case export to import.

Qualflare finds each column by its header, ignoring case, and accepts several names for each. If your file uses another name, rename that header before you import.

Qualflare fieldHeaders Qualflare accepts
NameName, Title, Test case name, Case name, Test case, Summary
DescriptionDescription, Test case description, Body, Details
PreconditionsPreconditions, Precondition, Pre-conditions, Pre conditions, Setup
StepsScenario steps, Scenario, Steps, Test steps, Test scenario
Expected resultExpected result, Expected results, Expected
StateStatus, State, Workflow status, Workflow state, Case status
PrioritySeverity, Priority, Custom field: Severity
Test typeLayer, Test layer, Custom field: Layer, Test type, Type
AutomationAutomation, Automated, Automation status, Is automated
SuiteParent suite, Suite (or Suite name, Test suite) and Sub suite; else Epic (or Epics, Product), Feature (or Features, Tested feature, Component) and Story (or Stories, Tested story). Each of the six also as Custom field: <name>

Import the Allure TestOps file

Open Import in Browse

In the project you're moving to, click Browse, open Browse actions (⋮, next to Create Suite) and choose Import. In a project with no suites, you can also click Import in the empty state.

Choose Allure TestOps

In Import Test Cases, click Allure TestOps. The card shows the file type it takes, .csv.

Pick the tool your file came from. Each card lists the file types it accepts.

Upload the file and click Import

In Upload Allure TestOps File, drop the file on Drop your file here, or click to browse, or click it to pick the file, then click Import. Qualflare shows Import queued — we'll notify you and the project when it's done. and imports the file in the background.

How Qualflare reads the scenario

Qualflare turns the Allure TestOps scenario cell into steps line by line:

  • Each line is one step. A line indented deeper than the one above is its sub-step, down to 5 levels. Text over 256 characters in a step is shortened.
  • Numbers such as 1., 2) or 1.1. at the start of a line are removed. A line that holds only a number, and blank lines, are dropped.
  • A line Expected result: <text> under a step becomes that step's expected result.
  • A line Expected result on its own makes the lines under it Expected Result steps.
  • The Expected result column becomes the case's last Expected Result step.
1. Open the login page
   Expected result: the login form is shown
2. Sign in
   2.1. Enter the email and password
   2.2. Click Sign in
3. Open Settings

This gives Open the login page with its expected result, Sign in with two sub-steps, and Open Settings.

Qualflare reads the other Allure TestOps columns this way:

Qualflare fieldFrom Allure TestOpsValue
SuiteParent suite, suite, sub suite; else epic, feature, storyThe first value of each, as a Parent > Child path; no label → Uncategorized
StateStatusAs on Migrate from Qase
PrioritySeverityCritical for blocker or critical, Medium for normal, Low for minor or trivial; see Migrate from TestRail for other values
Test TypeLayerThe type the layer names, without a trailing "Tests", "Test", "Testing" or "Layer": API Tests → API, Unit Testing → Unit; a Manual or Automated layer, or one Qualflare doesn't know → Feature
AutomationAutomationAutomated for automated, yes or true, else Manual; the layer never sets it
DescriptionDescriptionText over 1,024 characters is shortened

Keep your Allure results

qf ≥ 0.4.0 (requires qf 0.4.0 or later)

If your automated tests use Allure adapters, keep them. qf groups each test's retries into one result, marks a test that failed and then passed as flaky, and reads steps, parameters, labels, links and attachments. Uploaded results go to one suite, named after the results' top-level suite label when only one appears, or Allure results otherwise, so they join the cases you imported only where the suite and case names match.

An upload can replace a case's steps

When a report includes steps for a test, Qualflare replaces the steps of the case it matches with the reported ones, including steps you wrote by hand or generated with Quo. A test reported without steps leaves the case's steps as they are.

qf uploads the results directory your adapters write, with no --format:

qf myapp collect allure-results/

What qf reads from each result file is in Upload Allure results.

Verify counts

When the Allure TestOps import finishes, project members get the notification Import finished: <file name>, reading <n> cases created in <m> new suites, <k> skipped.

The cases created plus the cases skipped equal the rows in the file that have a name. If the count is lower than in Allure TestOps, check for rows with no name: Qualflare skips them.

Open Browse to see the suites.

When an import finishes, project members get a notification with the cases created and skipped.

Move automation

For tests that write Allure results, see Keep your Allure results. For other result formats, upload the files your test runner writes with qf <identifier> collect, from your machine or from CI (CI/CD integration); each upload becomes a launch, and qf reads these formats.

A result joins an existing case only when its suite and case names match. Otherwise the upload creates an Active, automated case next to the imported ones, and its suite if no suite has that name. See Manual and uploaded cases side by side.

If a result that joins an imported case includes steps, they replace the case's imported steps (Steps on matched cases).

For some frameworks a native reporter adds steps and retries: see Reporters.

Run Allure TestOps and Qualflare in parallel

You can keep Allure TestOps running while your team starts in Qualflare, but a later import of a newer export adds only cases with new names, so edits you make in Allure TestOps after the first import don't carry over. Do a last import when you switch, then edit the cases in Qualflare.

Limitations

  • A case can have up to 100 steps. The dialog refuses a file over 20 MB; a file over any other limit fails, and the notification names the limit.
  • A suite or case name over 512 characters fails the import.
  • A row with no name is skipped.
  • A label with several values, such as Epic A, Epic B, gives only its first value to the suite name.
  • Steps nested deeper than 5 levels stay at level 5.
  • An Expected result line with nothing under it is dropped.

Troubleshoot

MessageCauseFix
Import failed: <file name> with The file could not be read as a allure csv export: no test suites found in import file.No column matched a Name header, or every name was emptyRename the name column to Name (Export from Allure TestOps)
Invalid file type. Accepted: .csv or Invalid file type. Expected CSV file.Another file type, or the browser reports another typeExport, or save again, as CSV

Other messages: Troubleshoot.