VisualQ

Xray Cloud integration

Push FRT run results to Xray Cloud as Cucumber executions, or export the .feature / cucumber.json by hand.

Many teams keep test management on Xray Cloud (Jira plugin) but want a real runtime — VisualQ's Cucumber multipart push lets you keep both.

Manual exports (no integration required)

Even without configuring Xray, each run can still be exported manually:

  • Download .feature — the raw Gherkin source.
  • Download cucumber.json — Xray-compatible execution payload.

You can upload either file manually in Jira / Xray's import UI.

Setting up the integration

  1. In Xray Cloud, create a Global API Key (Settings → Apps → Xray Cloud API Keys). Record the Client ID and Client Secret.
  2. In VisualQ: Project → Settings → Integrations → Xray → paste the credentials, the Jira project key (e.g. VQ), and optionally a Test Plan key.
  3. Save. The integration doc is encrypted at rest in Firestore.

Pushing a run

Once the Xray integration is configured and enabled, the run detail page shows Push to Xray. VisualQ will:

  1. Build the cucumber.json from the run scenarios.
  2. Authenticate against Xray with the stored credentials.
  3. POST multipart/form-data to POST /api/v2/import/execution/cucumber/multipart with two parts:
    • results — the cucumber.json.
    • info — a JSON file with the Jira project, summary, description, and optional test environment / test plan key overrides.
  4. Persist the returned Test Execution key + URL on the run doc, so the timeline shows a direct link to the Jira issue.

You can override the summary or test environments in the modal that opens when you click Push to Xray — useful if a single run targets multiple environments.

What ends up in Xray

  • One Test Execution issue per push.
  • One Test issue per scenario (Xray reuses existing tests when the scenario name + tags match).
  • Steps map to Cucumber steps with their pass/fail status, duration (in nanoseconds), and error messages.

Limitations

  • VisualQ does not push screenshots, traces, or videos to Xray — they remain accessible via signed URLs from the VisualQ UI. Xray's own Cucumber import format does not carry binary attachments.
  • A Test Plan key set in the integration applies to every push. If you need per-push targeting, use the override field in the Push to Xray modal.
  • The push is idempotent at the issue level (Xray dedupes on test name) but every call creates a new Test Execution. If you re-run a flaky scenario five times, you'll get five executions linked to the same test.

On this page