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

How uploaded results become suites and cases

How Qualflare turns an uploaded results file into suites, test cases and steps: matching by name, what a rename does, what is overwritten and what runs next.

Last updated

In Qualflare, each qf <identifier> collect upload becomes one launch: Qualflare finds each suite by name in the project and each test case by name in its suite, creates the ones it doesn't find, and records one case run per test result.

From results file to launch

Here is what happens to an upload on its way to a launch:

  • qf <identifier> collect reads your report files, sends them in one upload and prints OK Test results collected successfully. Several files in one call make one launch.
  • Qualflare first checks the environment, milestone and language. If one doesn't exist in the project, the upload fails with HTTP 400 and creates nothing, for example environment "staging" does not exist in this project (Use environments from the CLI).
  • Each upload counts once toward the workspace's monthly Launches limit, 50 on Starter (Limits). qf sends an Idempotency-Key, so when it retries a request, Qualflare returns the launch it already created and counts nothing twice.

How suites and cases are matched

Qualflare matches a suite by its name in the project, and a test case by its name in that suite; nothing else identifies a test. Suites and cases an upload creates are marked automated, and a new case starts Active.

When your report …Qualflare …
keeps a test's suite and nameadds a case run to the same case, so its history continues
renames a testcreates a new case; the old case keeps its runs and stays in Browse until you archive or delete it
moves a test to another suite, or renames the suitecreates the case in that suite, and the suite too if it is new
repeats a name in one suite in one uploadrecords each result on the one case

A case's history, flaky score and AI Insights belong to the case, so a renamed test starts them over (Detect and fix flaky tests).

Steps on matched cases

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.

Reports that carry steps include Cucumber, Karate, Playwright, Newman, XCTest, Allure, CTRF and Qualflare JSON (Supported formats).

On an automated case, the steps are read-only in the app, and its state is Active or Outdated; see Test cases.

What else an upload changes

An upload also sets the suite's test type: it follows the latest report that names one, even if you set it by hand. Nothing else you set on an existing suite or case changes: its name, priority, state, description, or whether it's manual.

Manual and uploaded cases side by side

Manual and uploaded cases share one namespace: a manual case and an uploaded test with the same suite and name are one case, so the upload's results, and any reported steps, go to your manual case. Keep manual cases in their own suites, or give them names your tests don't use.

What runs after an upload

These start in the background after the upload returns, so qf doesn't wait for them:

WhatWhenPage
AI launch analysisAI features are on for the project and the plan allows itAI Launch Analysis
Failure clusteringTests failed, AI is on and the plan allows itFailure Clusters
Flaky detection and AI InsightsThe plan has flaky detection or AI Insights; archived cases are skippedDetect and fix flaky tests, AI Insights
Integration events and webhooksWhere you set them upShare and export results
Public reportThe project's public report is onPublishing a Report
Overview dashboardWithin about 7 minutesOverview dashboard

A manual run you finalize in the Test Wizard starts none of these except the dashboard (Run manual tests).