命令行
介绍
¥Introduction
以下是命令行中最常用的选项。
¥Here are the most common options available in the command line.
-
运行所有测试
¥Run all the tests
npx playwright test
-
运行单个测试文件
¥Run a single test file
npx playwright test tests/todo-page.spec.ts
-
运行一组测试文件
¥Run a set of test files
npx playwright test tests/todo-page/ tests/landing-page/
-
运行文件名中包含
my-spec
或my-spec-2
的文件¥Run files that have
my-spec
ormy-spec-2
in the file namenpx playwright test my-spec my-spec-2
-
运行 my-spec.ts 第 42 行中的测试
¥Run tests that are in line 42 in my-spec.ts
npx playwright test my-spec.ts:42
-
使用标题运行测试
¥Run the test with the title
npx playwright test -g "add a todo item"
-
在有头浏览器中运行测试
¥Run tests in headed browsers
npx playwright test --headed
-
针对特定项目运行所有测试
¥Run all the tests against a specific project
npx playwright test --project=chromium
-
¥Disable parallelization
npx playwright test --workers=1
-
选择 reporter
¥Choose a reporter
npx playwright test --reporter=dot
-
使用 Playwright 检查器 在调试模式下运行
¥Run in debug mode with Playwright Inspector
npx playwright test --debug
-
在交互式 UI 模式下运行测试,并具有内置监视模式(预览)
¥Run tests in interactive UI mode, with a built-in watch mode (Preview)
npx playwright test --ui
-
请求帮忙
¥Ask for help
npx playwright test --help
参考
¥Reference
配置文件 中提供了完整的 Playwright 测试选项集。以下选项可以传递到命令行并优先于配置文件:
¥Complete set of Playwright Test options is available in the configuration file. Following options can be passed to a command line and take priority over the configuration file:
Option | Description |
---|---|
Non-option arguments | Each argument is treated as a regular expression matched against the full test file path. Only tests from files matching the pattern will be executed. Special symbols like $ or * should be escaped with \ . In many shells/terminals you may need to quote the arguments. |
-c <file> or --config <file> | Configuration file, or a test directory with optional "playwright.config.{m,c}?{js,ts}". Defaults to playwright.config.ts or playwright.config.js in the current directory. |
--debug | Run tests with Playwright Inspector. Shortcut for PWDEBUG=1 environment variable and --timeout=0 --max-failures=1 --headed --workers=1 options. |
--fail-on-flaky-tests | Fail if any test is flagged as flaky (default: false). |
--forbid-only | Fail if test.only is called (default: false). Useful on CI. |
--fully-parallel | Run all tests in parallel (default: false). |
--global-timeout <timeout> | Maximum time this test suite can run in milliseconds (default: unlimited). |
-g <grep> or --grep <grep> | Only run tests matching this regular expression (default: ".*"). |
-gv <grep> or --grep-invert <grep> | Only run tests that do not match this regular expression. |
--headed | Run tests in headed browsers (default: headless). |
--ignore-snapshots | Ignore screenshot and snapshot expectations. |
--last-failed | Only re-run the failures. |
--list | Collect all the tests and report them, but do not run. |
--max-failures <N> or -x | Stop after the first N failures. Passing -x stops after the first failure. |
--no-deps | Do not run project dependencies. |
--output <dir> | Folder for output artifacts (default: "test-results"). |
--only-changed [ref] | Only run test files that have been changed between 'HEAD' and 'ref'. Defaults to running all uncommitted changes. Only supports Git. |
--pass-with-no-tests | Makes test run succeed even if no tests were found. |
--project <project-name...> | Only run tests from the specified list of projects, supports '*' wildcard (default: run all projects). |
--quiet | Suppress stdio. |
--repeat-each <N> | Run each test N times (default: 1). |
--reporter <reporter> | Reporter to use, comma-separated, can be "dot", "line", "list", or others (default: "list"). You can also pass a path to a custom reporter file. |
--retries <retries> | Maximum retry count for flaky tests, zero for no retries (default: no retries). |
--shard <shard> | Shard tests and execute only the selected shard, specified in the form "current/all", 1-based, e.g., "3/5". |
--timeout <timeout> | Specify test timeout threshold in milliseconds, zero for unlimited (default: 30 seconds). |
--trace <mode> | Force tracing mode, can be "on", "off", "on-first-retry", "on-all-retries", "retain-on-failure", "retain-on-first-failure". |
--tsconfig <path> | Path to a single tsconfig applicable to all imported files (default: look up tsconfig for each imported file separately). |
--ui | Run tests in interactive UI mode. |
--ui-host <host> | Host to serve UI on; specifying this option opens UI in a browser tab. |
--ui-port <port> | Port to serve UI on, 0 for any free port; specifying this option opens UI in a browser tab. |
-u or --update-snapshots [mode] | Update snapshots with actual results. Possible values are "all", "changed", "missing", and "none". Not passing defaults to "missing"; passing without a value defaults to "changed". |
-j <workers> or --workers <workers> | Number of concurrent workers or percentage of logical CPU cores, use 1 to run in a single worker (default: 50%). |
-x | Stop after the first failure. |