Every CI run becomes a Probara run

The reporter runs in the same npx cypress run command. There is no separate upload step, the run is closed once every result is in, and a reporting problem never changes the command’s exit code.

It signs in with an organization app token read from the environment: it uses no seat and keeps working when the person who created it leaves.

GitHub Actions
- name: Run Cypress tests
  run: npx cypress run
  env:
    PROBARA_API_TOKEN: ${{ secrets.PROBARA_API_TOKEN }}

Every attempt, with its error and evidence

A test Cypress retries sends each attempt in order, and every attempt stays in the case’s history. A failed attempt carries its error and the screenshot Cypress took of it.

Your tests can add more with the reporter’s helpers: steps with probara.step(), files with probara.attach() and links with probara.link().

What the reporter sends
Results
One per attempt, in order
Errors
The error of a failed attempt, on its result
Screenshots
The screenshot of a failed attempt, on that attempt
Steps and attachments
What probara.step() and probara.attach() add

Tests link to their cases, and missing cases are created

Put a case ID in an it or describe title, or call probara.id() while the test runs, and the result goes to that case.

A test that names none is matched by its automation key, and its case is created the first time it reports, in a suite named after its spec.

cypress/e2e/checkout.cy.js
describe('checkout', () => {
  it('SHOP-12 pays with a card', () => {
    cy.visit('/checkout');
  });

  it('pays with a gift card', () => {
    probara.id('SHOP-14');
    cy.visit('/checkout');
  });

  it('shows the total', () => {
    // No case named: matched by its key, created the first time.
  });
});

Run only the tests of a Probara run

Create a run in Probara, such as the cases of a release or the ones that failed yesterday, and let the pipeline run exactly those tests.

With the reporter’s plugin and support file in place, set the run’s ULID in the job: Cypress runs only the tests that belong to the run, and their results go into it.

GitHub Actions
- name: Run the tests of a Probara run
  run: npx cypress run
  env:
    PROBARA_API_TOKEN: ${{ secrets.PROBARA_API_TOKEN }}
    PROBARA_RUN_CASES_ONLY: 'true'
    PROBARA_RUN_ULID: ${{ inputs.run_ulid }}

Send your first Cypress run to Probara

Create your organization, create an app token and add the reporter. Every new organization starts on a 14-day Pro trial, with no credit card.