テストの実行とデバッグ
はじめに
単一のテスト、一連のテスト、またはすべてのテストを実行できます。テストは、--browser
フラグを使用して、単一のブラウザまたは複数のブラウザで実行できます。デフォルトでは、テストはヘッドレスモードで実行されます。つまり、テストの実行中にブラウザウィンドウは開かれず、結果はターミナルに表示されます。必要に応じて、--headed
CLI 引数を使用して、テストをヘッドモードで実行できます。
学習内容
テストの実行
コマンドライン
テストを実行するには、pytest
コマンドを使用します。これにより、デフォルトで Chromium ブラウザでテストが実行されます。テストはデフォルトでヘッドレスモードで実行されるため、テストの実行中にブラウザウィンドウは開かれず、結果はターミナルに表示されます。
pytest
テストをヘッドモードで実行する
テストをヘッドモードで実行するには、--headed
フラグを使用します。これにより、テストの実行中にブラウザウィンドウが開き、完了するとブラウザウィンドウは閉じられます。
pytest --headed
異なるブラウザでテストを実行する
テストを実行したいブラウザを指定するには、--browser
フラグの後にブラウザの名前を続けます。
pytest --browser webkit
テストを実行する複数のブラウザを指定するには、--browser
フラグを複数回使用し、それぞれのブラウザの名前を続けます。
pytest --browser webkit --browser firefox
特定のテストを実行する
単一のテストファイルを実行するには、実行したいテストファイルの名前を渡します。
pytest test_login.py
一連のテストファイルを実行するには、実行したいテストファイルの名前を渡します。
pytest tests/test_todo_page.py tests/test_landing_page.py
特定のテストを実行するには、実行したいテストの関数名を渡します。
pytest -k test_add_a_todo_item
テストを並行して実行する
テストを並行して実行するには、--numprocesses
フラグの後にテストを実行したいプロセスの数を続けます。論理 CPU コアの半分を推奨します。
pytest --numprocesses 2
(これは pytest-xdist
がインストールされていることを前提としています。詳細についてはこちらを参照してください。)
詳細については、Playwright Pytest の使用法または 一般的な CLI の使用法に関する Pytest ドキュメントを参照してください。
テストのデバッグ
Playwright は Python で実行されるため、Visual Studio Code の Python 拡張機能など、お好みのデバッガでデバッグできます。Playwright には Playwright Inspector が付属しており、Playwright API 呼び出しをステップ実行し、デバッグログを確認し、ロケーターを探索できます。
すべてのテストをデバッグするには、次のコマンドを実行します。
- Bash
- PowerShell
- Batch
PWDEBUG=1 pytest -s
$env:PWDEBUG=1
pytest -s
set PWDEBUG=1
pytest -s
1 つのテストファイルをデバッグするには、デバッグしたいテストファイルの名前を付けてコマンドを実行します。
- Bash
- PowerShell
- Batch
PWDEBUG=1 pytest -s test_example.py
$env:PWDEBUG=1
pytest -s test_example.py
set PWDEBUG=1
pytest -s test_example.py
特定のテストをデバッグするには、デバッグしたいテストの名前に続けて -k
を追加します。
- Bash
- PowerShell
- Batch
PWDEBUG=1 pytest -s -k test_get_started_link
$env:PWDEBUG=1
pytest -s -k test_get_started_link
set PWDEBUG=1
pytest -s -k test_get_started_link
このコマンドは、ブラウザウィンドウと Playwright Inspector を開きます。インスペクターの上部にあるステップオーバーボタンを使用して、テストをステップ実行できます。または、再生ボタンを押して、テストを最初から最後まで実行します。テストが終了すると、ブラウザウィンドウは閉じられます。
デバッグ中は、ロケーターピッカーボタンを使用してページ上の要素を選択し、Playwright がその要素を見つけるために使用するロケーターを確認できます。ロケーターを編集して、ブラウザウィンドウでリアルタイムにハイライト表示されるのを見ることもできます。ロケーターをコピーボタンを使用してロケーターをクリップボードにコピーし、テストに貼り付けます。
Playwright Inspector および ブラウザ開発ツールを使用したデバッグの詳細については、デバッグガイドをご覧ください。