@currents/playwright
Run Playwright tests and get the results reported to the Currents dashboard
Install
Make sure you already have Playwright installed, then run:
npm install @currents/playwright
CLI Usage (Recommended)
We need to pass three things to run pwc
:
- our record key
- the project ID, which is created when you create a project in the Current dashboard
- the CI build ID
The command passes down all the other CLI flags to the Playwright test runner as-is. We can pass these as command line arguments, as environment variables, or a mixture of both.
Command line arguments
pwc --project-id PROJECT_ID --key RECORD_KEY --ci-build-id hello-currents
Environment variables
CURRENTS_RECORD_KEY=RECORD_KEY CURRENTS_PROJECT_ID=PROJECT_ID CURRENTS_CI_BUILD_ID=hello-currents pwc
Reporter Usage
Alternatively, @currents/playwright
can be run as a Playwright reporter. In your Playwright config file playwright.config.ts
add:
import type { PlaywrightTestConfig } from "@playwright/test";
const config: PlaywrightTestConfig = {
reporter: "@currents/playwright",
};
export default config;
Then, you can run your tests as usual, just remember to set the three environment variables:
CURRENTS_RECORD_KEY=RECORD_KEY CURRENTS_PROJECT_ID=PROJECT_ID CURRENTS_CI_BUILD_ID=hello-currents npx playwright test
Screenshots
By default Playwright only captures screenshots at the end of a test, according to the provided screenshot option. Manually created screenshots are hidden by default and not attached to any test.
To send additional screenshots to Currents, they have to be attached to the test. For example, you can attach a screenshot to a test like this
const { test, expect } = require("@playwright/test");
test("basic test", async ({ page }, testInfo) => {
await page.goto("https://playwright.dev");
const screenshot = await page.screenshot();
await testInfo.attach("screenshot", {
body: screenshot,
contentType: "image/png",
});
});
For more information see the Playwright test info attachment documentation.