コマンドライン
Playwrightは、テストの実行、コード生成、デバッグなどのための強力なコマンドラインインターフェースを提供します。CLIで利用可能なコマンドと引数の最新リストは、常にnpx playwright --helpで取得できます。
必須コマンド
テストを実行する
Playwrightテストを実行します。テストの実行について詳しく読む。
構文
npx playwright test [options] [test-filter...]
例
# Run all 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/
# Run tests at a specific line
npx playwright test my-spec.ts:42
# Run tests by title
npx playwright test -g "add a todo item"
# Run tests in headed browsers
npx playwright test --headed
# Run tests for a specific project
npx playwright test --project=chromium
# Get help
npx playwright test --help
並列化を無効にする
npx playwright test --workers=1
Playwright Inspectorでデバッグモードで実行する
npx playwright test --debug
インタラクティブなUIモードでテストを実行する
npx playwright test --ui
共通オプション
| オプション | 説明 |
|---|---|
--debug | Playwright Inspectorでテストを実行します。PWDEBUG=1環境変数と--timeout=0 --max-failures=1 --headed --workers=1オプションのショートカットです。 |
--headed | ヘッダー付きブラウザでテストを実行します(デフォルト:ヘッドレス)。 |
-g <grep>または--grep <grep> | この正規表現に一致するテストのみを実行します(デフォルト:" .*")。 |
--project <project-name...> | 指定されたプロジェクトリストのテストのみを実行します。`*`ワイルドカードをサポートします(デフォルト:すべてのプロジェクトを実行)。 |
--ui | インタラクティブUIモードでテストを実行します。 |
-j <workers>または--workers <workers> | 同時ワーカーの数、または論理CPUコアのパーセンテージ。単一ワーカーで実行するには1を使用します(デフォルト:50%)。 |
すべてのオプション
| オプション | 説明 |
|---|---|
| 非オプション引数 | 各引数は、テストファイルのフルパスに対してマッチする正規表現として扱われます。パターンに一致するファイルからのテストのみが実行されます。`$`や`*`のような特殊記号は`\`でエスケープする必要があります。多くのシェル/ターミナルでは、引数を引用符で囲む必要がある場合があります。 |
-c <file>または--config <file> | 設定ファイル、またはオプションの"playwright.config.{m,c}?{js,ts}"を含むテストディレクトリ。現在のディレクトリのplaywright.config.tsまたはplaywright.config.jsがデフォルトです。 |
--debug | Playwright Inspectorでテストを実行します。PWDEBUG=1環境変数と--timeout=0 --max-failures=1 --headed --workers=1オプションのショートカットです。 |
--fail-on-flaky-tests | 不安定なテストとしてフラグ付けされたテストがあれば失敗します(デフォルト:false)。 |
--forbid-only | test.onlyが呼び出された場合に失敗します(デフォルト:false)。CIで便利です。 |
--fully-parallel | すべてのテストを並行して実行します(デフォルト:false)。 |
--global-timeout <timeout> | このテストスイートが実行できる最大時間(ミリ秒単位)(デフォルト:無制限)。 |
-g <grep>または--grep <grep> | この正規表現に一致するテストのみを実行します(デフォルト:" .*")。 |
--grep-invert <grep> | この正規表現に一致しないテストのみを実行します。 |
--headed | ヘッダー付きブラウザでテストを実行します(デフォルト:ヘッドレス)。 |
--ignore-snapshots | スクリーンショットとスナップショットの期待を無視します。 |
-j <workers>または--workers <workers> | 同時ワーカーの数、または論理CPUコアのパーセンテージ。単一ワーカーで実行するには1を使用します(デフォルト:50%)。 |
--last-failed | 失敗したテストのみを再実行します。 |
--list | すべてのテストを収集して報告しますが、実行はしません。 |
--max-failures <N>または-x | 最初のN回の失敗後に停止します。-xを渡すと最初の失敗後に停止します。 |
--no-deps | プロジェクトの依存関係を実行しません。 |
--output <dir> | 出力アーティファクトのフォルダ(デフォルト:"test-results")。 |
--only-changed [ref] | 'HEAD'と'ref'の間で変更されたテストファイルのみを実行します。デフォルトでは、コミットされていないすべての変更を実行します。Gitのみをサポートしています。 |
--pass-with-no-tests | テストが見つからなくてもテスト実行を成功させます。 |
--project <project-name...> | 指定されたプロジェクトリストのテストのみを実行します。`*`ワイルドカードをサポートします(デフォルト:すべてのプロジェクトを実行)。 |
--quiet | 標準入出力を抑制します。 |
--repeat-each <N> | 各テストをN回実行します(デフォルト:1)。 |
--reporter <reporter> | 使用するレポーター。カンマ区切りで、「dot」、「line」、「list」などが可能です(デフォルト:「list」)。カスタムレポーターファイルへのパスを渡すこともできます。 |
--retries <retries> | 不安定なテストの最大再試行回数。0は再試行なし(デフォルト:再試行なし)。 |
--shard <shard> | テストをシャード化し、選択されたシャードのみを実行します。「current/all」の形式で、1から始まる指定(例:「3/5」)。 |
--timeout <timeout> | テストのタイムアウトしきい値をミリ秒で指定します。0は無制限です(デフォルト:30秒)。 |
--trace <mode> | トレースモードを強制します。on、off、on-first-retry、on-all-retries、retain-on-failure、retain-on-first-failureが可能です。 |
--tsconfig <path> | インポートされたすべてのファイルに適用される単一のtsconfigへのパス(デフォルト:インポートされたファイルごとにtsconfigを個別に検索)。 |
--ui | インタラクティブUIモードでテストを実行します。 |
--ui-host <host> | UIを提供するホスト。このオプションを指定すると、ブラウザタブでUIが開きます。 |
--ui-port <port> | UIを提供するポート。0は空いているポート。このオプションを指定すると、ブラウザタブでUIが開きます。 |
-uまたは--update-snapshots [mode] | スナップショットを実際の結果で更新します。可能な値は「all」、「changed」、「missing」、「none」です。フラグなしでテストを実行すると「missing」がデフォルトになります。フラグを付けて値を指定せずにテストを実行すると「changed」がデフォルトになります。 |
--update-source-method [mode] | スナップショットを実際の結果で更新します。可能な値は「patch」(デフォルト)、「3way」、「overwrite」です。「patch」は、後でソースコードを更新するために使用できる統合差分ファイルを作成します。「3way」は、ソースコードにマージ競合マーカーを生成します。「overwrite」は、新しいスナップショット値でソースコードを上書きします。 |
-x | 最初の失敗後に停止します。 |
レポートを表示
以前のテスト実行からのHTMLレポートを表示します。HTMLレポーターについて詳しく読む。
構文
npx playwright show-report [report] [options]
例
# Show latest test report
npx playwright show-report
# Show a specific report
npx playwright show-report playwright-report/
# Show report on custom port
npx playwright show-report --port 8080
オプション
| オプション | 説明 |
|---|---|
--host <host> | レポートを提供するホスト(デフォルト:localhost) |
--port <port> | レポートを提供するポート(デフォルト:9323) |
ブラウザのインストール
Playwrightに必要なブラウザをインストールします。Playwrightのブラウザサポートについて詳しく読む。
構文
npx playwright install [options] [browser...]
npx playwright install-deps [options] [browser...]
npx playwright uninstall
例
# Install all browsers
npx playwright install
# Install only Chromium
npx playwright install chromium
# Install specific browsers
npx playwright install chromium webkit
# Install browsers with dependencies
npx playwright install --with-deps
インストールオプション
| オプション | 説明 |
|---|---|
--force | 安定版ブラウザチャネルの再インストールを強制します |
--with-deps | ブラウザのシステム依存関係をインストールします |
--dry-run | インストールを実行せず、情報のみを表示します |
--only-shell | 完全なChromiumではなく、chromium-headless-shellのみをインストールします |
--no-shell | chromium-headless-shellをインストールしません |
依存関係のインストールオプション
| オプション | 説明 |
|---|---|
--dry-run | インストールを実行せず、情報のみを表示します |
生成&デバッグツール
コード生成
アクションを記録し、複数の言語でテストを生成します。Codegenについて詳しく読む。
構文
npx playwright codegen [options] [url]
例
# Start recording with interactive UI
npx playwright codegen
# Record on specific site
npx playwright codegen https://playwright.dokyumento.jp
# Generate Python code
npx playwright codegen --target=python
オプション
| オプション | 説明 |
|---|---|
-b, --browser <name> | 使用するブラウザ: chromium, firefox, or webkit (デフォルト: chromium) |
-o, --output <file> | 生成されたスクリプトの出力ファイル |
--target <language> | 使用する言語: javascript, playwright-test, pythonなど |
--test-id-attribute <attr> | テストIDに使用する属性 |
トレースビューア
デバッグのためにテストトレースを分析・表示します。トレースビューアについて詳しく読む。
構文
npx playwright show-trace [options] <trace>
例
# View a trace file
npx playwright show-trace trace.zip
# View trace from directory
npx playwright show-trace trace/
オプション
| オプション | 説明 |
|---|---|
-b, --browser <name> | 使用するブラウザ: chromium, firefox, or webkit (デフォルト: chromium) |
-h, --host <host> | トレースを提供するホスト |
-p, --port <port> | トレースを提供するポート |
特殊コマンド
レポートをマージする
blobレポートを読み取り、それらを結合します。merge-reportsについて詳しく読む。
構文
npx playwright merge-reports [options] <blob dir>
例
# Combine test reports
npx playwright merge-reports ./reports
オプション
| オプション | 説明 |
|---|---|
-c, --config <file> | 設定ファイル。出力レポートの追加設定を指定するために使用できます。 |
--reporter <reporter> | 使用するレポーター。カンマ区切りで、「list」、「line」、「dot」、「json」、「junit」、「null」、「github」、「html」、「blob」が可能です(デフォルト:「list」)。 |
キャッシュをクリア
すべてのPlaywrightキャッシュをクリアします。
構文
npx playwright clear-cache