For teams with WebdriverIO tests who want Certyn to run them exactly as CI does, and keep a JUnit report.
Your setup
- WebdriverIO tests (
wdio.conf.tsor.js) in a GitHub repo. - CI runs them, for example
npx wdio run wdio.conf.tsin GitHub Actions. @wdio/junit-reporterin the config, or you want it.- The app is on the internet, for example staging.
Say this to Certyn
Run our WebdriverIO tests from acme/web the way our GitHub Actions workflow does, against staging, and use the JUnit report.
What Certyn does
- Opens a form for
GH_TOKEN(Contents: Read on that repo). - Reads your workflow file and
package.json: the Node version, the install step, the test command and the variables the workflow sets. It uses the same on the Machine. - Reads
wdio.conffor the base URL and the browser. Passes the environment URL ($TARGET_BASE_URL) to it. Chromium and chromedriver are on the Machine. - Runs one spec to check the setup, then the whole suite as a run.
- Reads the JUnit XML for exact totals and the first error of each failed test, then decides the cause of each failure.
What you get
- A run report with failures grouped by cause: product bug, broken test, flaky test, setup problem.
- One issue per real product bug, with evidence.
- If you also want history from your own CI: add a step after
wdiothat uploads the JUnit XML toPOST /api/ci/results. Theci_setupform creates the API key; save it as a CI secret. You get pass rate and flaky tests per test.
Limits
- Without a JUnit reporter, Certyn reads the console output. Ask it to add the reporter as a pull request.
- Results pushed from your CI give history only. They do not explain failures by themselves; ask Certyn, or let it run the suite.
- Machines run Linux. Safari is not available. Other browsers must be installed during the run.