Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To verify Playwright, check three separate things: that your project resolves its local Playwright CLI, that the browser binaries for that Playwright version are installed, and that a test can actually launch a browser. From your project directory, run npx --no-install playwright --version, then npx playwright install --list, and finally npx playwright test. A version number alone does not prove that a browser is ready to run.

What a complete Playwright installation check proves

Playwright has two parts that are easy to conflate: the package and its command-line tools, and the browser binaries that the package launches. A third check—a real test run—shows whether those parts work together in your current environment.

Check What it establishes What it does not establish by itself
npx --no-install playwright --version A Playwright CLI is available from the project without asking npx to fetch a missing package. That a compatible browser executable is installed or can launch.
npx playwright install --list Which browser installations Playwright can find. That a browser will successfully launch in this operating system and environment.
npx playwright test Whether the configured test runner can execute a test and launch its selected browser. That every configured browser, operating system, or CI environment works.

Use the checks in that order. If one fails, fix that layer before treating a later failure as evidence of a different problem.

Verify the project-local package and CLI

Run the local-only version check

Open a terminal in the project directory—the directory that contains the relevant package.json—and run:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
npx --no-install playwright --version

This is the safer verification command when you want to know whether the project already has a locally resolvable Playwright CLI. The --no-install option prevents npx from fetching a package just to make the command succeed. If it prints a version, the CLI resolved; record that version when diagnosing a browser mismatch.

Interpret the result

  • A version prints: the command found a Playwright CLI. Continue to the browser check; this is not yet proof of a working browser.
  • The command reports that Playwright is unavailable: check that you are in the intended project and that Playwright is installed there. Do not remove --no-install merely to make this verification pass; that could hide the fact that the local dependency is missing.
  • You intentionally use a different package manager or workspace layout: run the command from the package/workspace where the dependency is declared, using that environment’s established invocation. The core question remains whether the intended project resolves its own Playwright installation.

npx playwright --version is also a documented version check, but for a strict local verification, the no-install form makes the intent explicit.

Install and inspect the browser binaries

Install browsers for the installed Playwright version

Run:

npx playwright install

Playwright’s documentation states: “Each version of Playwright needs specific versions of browser binaries to operate.” In practical terms, installing or upgrading the package and installing its browsers are separate steps. If the Playwright version changes, run the install command again so the browser revisions match the package.

List what Playwright can find

Then inspect the browser registrations:

npx playwright install --list

Compare the listed browsers with the projects in your playwright.config.* file. A configuration might include Chromium, Firefox, and WebKit, or only a subset. A successful listing means Playwright can find browser installations; it does not by itself prove that system libraries, permissions, and runtime conditions permit launch.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Sale
HTML and CSS: Design and Build Websites
  • HTML CSS Design and Build Web Sites
  • Comes with secure packaging
  • It can be a gift option

Do not confuse the browser engines

Check the engine your test actually uses. If the test project selects Chromium, a successful Chromium test does not verify Firefox or WebKit. Likewise, a local pass does not prove the same browser will launch on a different operating system or in CI. For confidence in a particular matrix, run the smoke test in each relevant configured project and environment.

Run a smoke test that launches a browser

The most useful end-to-end verification is a passing Playwright test. From the project directory, run:

npx playwright test

This exercises package resolution, the test runner, and browser launch for the selected test projects. If your project already has tests, this runs the configured suite, so use the appropriate test file or project selection when you want a narrowly scoped check. Alternatively, create the small test through Playwright’s official getting-started flow and run it.

A test that passes in one selected project confirms that particular route through your current setup. To verify additional configured engines, run the test against those projects as well; to verify CI, run the same check in the CI environment rather than inferring success from a local machine.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Verify Playwright in CI

CI verification should use the same three layers, in the CI job’s actual operating system and workspace. A locally passing test cannot establish that CI has browser binaries, system libraries, the right cache, or download access.

  1. Resolve the project CLI: execute npx --no-install playwright --version from the project workspace used by the job.
  2. Make browser binaries available: run npx playwright install after the project dependencies are installed, unless the job deliberately restores a compatible browser cache.
  3. Run the test: execute npx playwright test for the configured project or projects the job is meant to cover.
  4. If launch fails on Linux: install needed system dependencies with npx playwright install-deps, or use npx playwright install --with-deps chromium when the job only needs Chromium.
  5. If using a shared cache: confirm the job’s PLAYWRIGHT_BROWSERS_PATH points at the intended location and that the files are available to the job’s user.
  6. If downloads are restricted: configure the proxy, certificate trust, or internal download host as described below, then rerun browser installation.

Keep the package version and browser cache lifecycle aligned. Reusing browser files across jobs is only useful when the cached revisions match the Playwright package in the job; after a version upgrade, refresh the browsers rather than relying on an old cache.

Diagnose “installed, but cannot launch” failures

When the CLI version works but a test cannot launch, treat it as a browser/runtime problem rather than assuming the package is absent. These checks isolate common causes without conflating package resolution with executable availability.

Browser missing or revision mismatch

  • Run npx playwright install --list and see whether the engine used by the test is listed.
  • Run npx playwright install from the same project/version context.
  • If Playwright was recently upgraded, reinstall its browser binaries; browser revisions are version-coupled.

Missing Linux libraries

A browser may be present but fail during launch because required operating-system libraries are missing. On Linux or CI, try:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
Web Design with HTML, CSS, JavaScript and jQuery Set
  • Brand: Wiley
  • Set of 2 Volumes
  • A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers
npx playwright install-deps

If the job only needs Chromium, the combined command is:

npx playwright install --with-deps chromium

Use the engine actually selected in your test configuration; installing dependencies for Chromium does not verify a Firefox or WebKit launch.

Cache path or permissions

Playwright’s browser cache is conventionally located at:

  • Windows: %USERPROFILE%AppDataLocalms-playwright
  • macOS: ~/Library/Caches/ms-playwright
  • Linux: ~/.cache/ms-playwright

If files seem absent, check the cache used by the account running the command, not just the account that installed the browsers. For a shared or custom cache, set PLAYWRIGHT_BROWSERS_PATH consistently for installation and test execution, and ensure that account can read and execute the files.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Proxy, TLS certificate, or internal mirror problems

If the browser download cannot reach its host in a restricted network, set HTTPS_PROXY for the proxy used by your environment. When TLS inspection results in an untrusted-certificate error, configure NODE_EXTRA_CA_CERTS with the corporate root certificate. If your organization serves the browser binaries from an internal artifact repository, set PLAYWRIGHT_DOWNLOAD_HOST to that host. Then rerun npx playwright install and confirm with --list.

These variables solve different network conditions: a proxy routes traffic, an extra CA certificate establishes trust in an inspected connection, and a download host redirects where Playwright obtains binaries. Setting one does not automatically correct the others.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

If your goal is to capture a website screenshot rather than run browser automation tests, ScreenshotNeo offers a one-request screenshot API. It is not a replacement for Playwright’s test runner or browser-based assertions, but it avoids installing browser binaries for that capture task. See the ScreenshotNeo API documentation.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

Cookie banners, newsletter popups, and chat widgets are removed before the shot; bot checks, blank pages, timeouts, failed loads, and cache hits are not billed. An MCP server lets AI agents use screenshot tools, and the free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Learn more at ScreenshotNeo.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Sign up free for 1,000 screenshots a month, with no card required.

Frequently Asked Questions

Does a successful `npx –no-install playwright –version` mean Playwright is fully installed?

No. It verifies that the local CLI resolves. Browser availability and a successful browser launch require the separate browser-list and smoke-test checks.

Does `npx playwright install –list` prove a test can launch?

No. It shows browser installations Playwright can find. A test run is needed to verify launch in the current environment.

Can ScreenshotNeo verify Playwright tests?

No. ScreenshotNeo captures website images or PDFs; it does not replace the Playwright test runner or test assertions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.