Docs · Guides

Import test cases

The import wizard lets you bring test cases from another tool — or re-import a Probara export — into a project without recreating them by hand. It opens as a compact dialog in place — no navigation away from the repository. Import reads an export file and writes it directly to the project — there is no preview step and no confirmation gate. You get a confirmation once it’s done, or a list of any rows that could not be imported. Integrators who want to automate imports can use the test case import API instead.

Reaching the wizard

  1. Open a project and go to the Repository page.
  2. Click the header menu () and select Import.
  3. The import dialog opens on top of the repository page.

The Import action is visible to members, admins, and owners. Viewers do not see it — import always requires member-level access or above.

Supported source formats

Source toolFormats
ProbaraJSON, XML, CSV, XLSX
QaseXML, JSON, CSV, XLSX
TestRailXML, CSV

You choose the source tool from a select field — Probara (preselected by default), Qase, or TestRail. Re-importing a file that Probara itself exported is the zero-configuration path: any of the four export formats round-trips back in. You never choose a file format directly: once you pick the source tool, the dialog automatically figures out the exact format from the file you upload (by its extension, or by inspecting the file’s content if the extension is missing). Export your test cases from the source tool first, then upload that export file here. If the file’s format is not one the chosen source tool supports — for example, uploading a JSON file after choosing TestRail, which only accepts XML or CSV — the dialog tells you so immediately, before uploading anything.

.md files are not importable — Markdown is no longer an export format. The dialog rejects a .md upload immediately; export in one of the supported formats instead.

The import dialog

The dialog is a single form. There is no separate upload/mapping/destination sequence to click through, and there is no preview or confirmation step — clicking Import test cases commits the file directly.

The form

The form has everything you need in one screen:

  • Source type — a select listing each source tool once: Probara (preselected by default), Qase, and TestRail. The dialog shows the formats each one supports (Probara: JSON, XML, CSV, XLSX; Qase: XML, JSON, CSV, XLSX; TestRail: XML, CSV) as a hint under the field, but you never pick a format yourself.
  • Parent suite — a select defaulting to Project root; imported suites and cases are placed beneath whichever suite you choose here. The source file’s own suite hierarchy (if any) is recreated underneath it.
  • Upload file — choose the exported file from the source tool you selected. The dialog resolves its exact format for you.
  • Field-mapping note — informational text describing which fields the import can populate, which depends on the source tool. Qase and TestRail exports map three system fields: Priority, Type, and Status. Probara re-imports map every system field — priority, severity, status, type, layer, behavior, automation status, flaky, preconditions, and postconditions — plus any user-defined custom field that already exists in the organization. Values in your file are matched to existing fields and options automatically, by name (case-insensitive) — there is no manual mapping control to configure, and import never creates a new field or option. A field that does not exist in the organization is skipped with a notice; an option value that does not match any existing option — for example, a priority named "Urgent" when the project only has "High"/"Medium"/"Low" — falls back to the field’s default option when one is configured, and is otherwise left unset. The case still imports; nothing fails because of an unmapped value. The test case import API reference documents the exact mapping and warning contract.
  • Replace matching test cases — a checkbox, off by default. See Replace matching below for the exact rule.

The primary Import test cases button stays disabled until a source type and a valid file are provided. If the file is larger than the import size limit, the dialog shows an error immediately and does not attempt to upload it. See Size limit below.

Clicking Import test cases stages the file and commits it directly — there is no intervening preview or confirm step.

What happens after you click Import test cases

  • Full success (every row imported). The dialog closes, a success toast confirms how many cases were imported, and the repository tree refreshes to show the new suites and cases.
  • Partial success (some rows failed). The dialog stays open, showing the list of failed rows — each with its row number, title, and the reason it failed. The rows that did import are already in the project; you can close the dialog once you’ve reviewed the list.

Replace matching

The Replace matching test cases checkbox (off by default) controls what happens when a case in your source file has the exact same title as a case that already exists in the target suite:

  • Off: every source case is created as a new case, even if the title matches an existing one. This can produce duplicate titles.
  • On: a source case whose title exactly matches one existing case in the target suite overwrites that case’s content (steps, tags, description, and the mapped fields) instead of creating a duplicate. The existing case’s ID and creation history are preserved — only its content changes.

If a title matches more than one existing case in the target suite, that row is reported as a failure (ambiguous_match) rather than guessing which case to replace.

If your source file itself contains two rows with the same title, only the first one (in file order) is eligible to replace an existing case; the later duplicate is always created as a new case.

Size limit

Import accepts files up to 10 MB. A larger file is rejected before upload, with a message telling you to choose a smaller export.

There is also a maximum number of test cases per import run. If your export exceeds that limit, the file is rejected before any data is read — split the export into smaller batches and import them one at a time.

Limitations in this version

  • No attachments. Images or files embedded in test case steps (for example, screenshots pasted into an expected result) are not imported. A missing image after import is expected — re-attach it manually afterward if needed.
  • Qase and TestRail map system fields only. Imports from Qase or TestRail populate Priority, Type, and Status. Probara re-imports map all system fields plus existing custom fields — but import never creates a new field or option; unknown fields are skipped with a notice.
  • No live connectors. Import always works from a file you export manually from the source tool. There is no direct integration that pulls cases live from Qase or TestRail.
  • No Markdown. .md files are not importable — Markdown is no longer an export format.

Troubleshooting

MessageWhat it means
File exceeds the import size limitThe file is larger than 10 MB — export a smaller subset or split the file.
This file contains too many test casesThe parsed file exceeds the per-import case limit — split the export into smaller batches.
The file could not be read as a <format> exportThe file’s content does not match the source tool/format you selected — confirm you selected the correct source tool.
No test cases were found in this fileThe file parsed successfully but contained zero cases — confirm you exported the right file.
Too many import requestsYou have started too many imports too quickly — wait a moment and try again.
The uploaded file could not be foundThe staged upload expired or was not found — upload the file again from the form state.

Permissions

ActionViewerMemberAdminOwner
See the Import entry pointNoYesYesYes
Open the import wizardNoYesYesYes
Run an importNoYesYesYes