Command What it does orbittest run [files] Run tests (all discovered, one file, or one folder). orbittest init Create a starter config, tests folder, and example test. orbittest ui Open the local dashboard for running tests and browsing reports. orbittest forge [url] Record a browser flow and generate a test script. orbittest devices List connected Android devices. orbittest doctor Diagnose the environment: Node, browser, ADB, devices. orbittest clean-reports Remove old report runs by age and count.
Most day-to-day work uses a handful of these. They are grouped here by what you are trying to do.
Flag Description —workers Number of parallel workers (each is a full browser). —retries Retry count per test. Passing on retry marks the test flaky. —timeout Test timeout in milliseconds.
Flag Description —ci Enable CI mode: hidden browser, summary.json, junit.xml, no report server. —fail-fast Stop scheduling new tests after the first failure. —max-failures Stop scheduling after N failures; unscheduled tests are reported as skipped. —shard <n/total> Run a slice of the suite, e.g. 1/4. Pairs with parallel CI jobs. —github-annotations Emit GitHub Actions error/warning annotations for failures and flakes.
Flag Description —trace Capture a step-by-step trace with screenshots for every test. —smart-report Collect browser evidence: console errors, failed and slow requests, navigation. —step Live debugging: pause before every action with the Orbit Inspector. —verbose Print OrbitTest internal browser/action logs (your console.log always prints).
Flag Description —show-browser / —hide-browser Force browser visibility for this run. —env Activate a named environment from config. —reports-dir Override the reports output directory. —no-open-report-on-failure Do not start the local failure report server. —report-port Fixed port for the failure report server.
Flag Default Description —dry-run — Preview deletions without removing anything. Run this first. —passed 10 How many passed runs to keep. —failed 30 How many failed runs to keep. —max-age-days 30 Remove runs older than N days.
Flag Description —port Port for the UI server (default picks one, typically 9323). —no-open Start the server without opening a browser tab. —reports-dir Browse a different reports directory.
Flag Description —output Write the recorded script to a file. Without it, the script is copied to the clipboard.
Contributors should not have to memorize flags. Encode the common paths once:
"test:e2e" : " orbittest run " ,
"test:e2e:smoke" : " orbittest run tests/smoke " ,
"test:e2e:debug" : " orbittest run --step " ,
"test:e2e:evidence" : " orbittest run --trace --smart-report " ,
"test:e2e:ci" : " orbittest run --ci --workers 2 "
package.json scripts for the workflows every team needs.
Put the team’s defaults in orbittest.config.js and use flags for one-off overrides. Flags always win, so an experiment never requires editing the config.
Yes, pass them as arguments: orbittest run tests/login.test.js tests/checkout.test.js, or pass a folder to run everything inside it.
Node version, browser availability, and for mobile setups, the ADB binary and connected devices, with actionable messages for anything broken.
Configuration — Every orbittest.config.js option explained: workers, retries, timeouts, browser display, CI behavior, and named environments.
CI/CD Integration — CI mode, retries and flaky detection, fail-fast, sharding across jobs, and a complete GitHub Actions workflow.
Reports & Diagnostics — HTML, JSON, and JUnit reports, trace timelines, Smart Report browser evidence, step mode, and report cleanup.
Environment Variables — ORBITTEST_CHROME_PATH, sharding, CI flags, ADB and device selection, and how to keep secrets out of test files.