@testdino/playwright streams Playwright test results to TestDino as a run executes. Results appear on the dashboard during the run, with no separate upload step. Paste the AI prompt below, or follow Installation and Set up.
Prerequisites
- Node.js
>= 18.0.0 @playwright/test>= 1.52.0- TestDino API token (generate one)
- Git initialized repository (for commit and branch metadata)
Set up with an AI agent
Use this pre-built prompt to integrate @testdino/playwright into your project.
Quick Reference
Installation
Set up
Add TestDino to thereporter array in your Playwright config. This is the only entry TestDino needs. Other reporters (html, list) are optional and yours to keep.
playwright.config.ts
Prefer not to edit your config?
Prefer not to edit your config?
Run It wraps
tdpw test instead of npx playwright test. Same result, no config change.npx playwright test, so any Playwright flag passes through, for example npx tdpw test --project=chromium --shard=1/3.CLI flags
Set the token with-t or the TESTDINO_TOKEN environment variable. All other flags are optional.
tdpw test. Playwright does not define them, except --debug, which tdpw consumes for TestDino logs. Pass Playwright flags through tdpw as usual: npx tdpw test --tags regression,smoke --project=chromium.
First non-empty source wins: CLI flag, then
testdino.config.ts, then Playwright reporter options, then the environment variable. --split has no config or env equivalent. --coverage on the CLI only sets enabled; include, exclude, and thresholds stay in config. Learn how to set run labels in Run-level tags. Learn how to partition jobs in Split mode.
--debug did not open the Playwright Inspector
--debug did not open the Playwright Inspector
tdpw consumes --debug for TestDino logs. It does not forward it to Playwright.TESTDINO_DEBUG=1 npx tdpw test -- --debug enables both.Config file
Placetestdino.config.ts or testdino.config.js in the project root. The same fields work as options on ['@testdino/playwright', { ... }] in playwright.config.
testdino.config.ts
Learn coverage setup in Code Coverage.
Run-level tags
--tags labels the whole test run in TestDino. It does not select which test cases Playwright executes. Test-case tags (@smoke in test code, --grep) stay on Playwright.
--tags is a tdpw flag. To keep npx playwright test, set the same labels from the environment or config.
npx playwright test --tags exits with error: unknown option '--tags'. Use npx tdpw test --tags, TESTDINO_TAGS, or tags in config.- Environment
- testdino.config.ts
- playwright.config.ts
First non-empty source wins: CLI flag, then
testdino.config.ts, then Playwright reporter options, then TESTDINO_TAGS. These labels appear as run-level chips on Test Runs. They are separate from test annotations.
Sharded runs
Pass the same--ci-run-id to every shard. TestDino groups them into a single logical run on the dashboard.
ciRunId or TESTDINO_CI_RUN_ID and pass --shard to npx playwright test as usual.
Split mode
Sharding needs every job to run the same command. When your jobs differ, for example an API project on one runner and browser tests on another, use split mode instead. Each job tags its results with--split i/N and a shared --split-id, and TestDino merges them into one test run.
--split labels the results. It does not select which test cases run, so assign them yourself with spec paths, --project, or --grep. Requires version 2.3.0 or later. Learn how to build a CI matrix and read the Splits panel in Split mode.
Code coverage
Instrument your app with Istanbul so it exposeswindow.__coverage__, import the TestDino fixture in your tests, then enable coverage:
Environment variables
There is no environment variable for
--split or --coverage. --split is command-only. Coverage include, exclude, and thresholds stay in the config file.
What gets collected
Use in CI/CD
SetTESTDINO_TOKEN as a CI secret, keep TestDino in your playwright.config, and run npx playwright test. Each guide below has a full pipeline config with sharding and troubleshooting.
GitHub Actions
GitLab
TeamCity
Azure DevOps
CircleCI
AWS CodeBuild
Jenkins
Troubleshooting
Token is required but not provided
Token is required but not provided
Set the token via Generate a new token from API Keys if the issue persists.
--token, the TESTDINO_TOKEN environment variable, or the reporter option in playwright.config. Confirm it is set:Execution limit reached
Execution limit reached
Your account reached its monthly quota. Tests continue to run normally. Only streaming to TestDino pauses until the quota resets.Upgrade your plan or wait for the monthly reset.
Stream dropped, switched to HTTP fallback
Stream dropped, switched to HTTP fallback
Expected behavior. If the streaming connection drops, events fall back to HTTP delivery automatically. Your tests are never affected.
Related
Real-Time Test Streaming
How real-time streaming works and when to use it
Generate API Keys
Create and manage tokens for the CLI and CI