テストの実行とデバッグ
はじめに
単一のテスト、一連のテスト、またはすべてのテストを実行できます。テストは異なるブラウザで実行できます。デフォルトでは、テストはヘッドレスで実行されます。つまり、テストの実行中にブラウザウィンドウは開かれず、結果はターミナルに表示されます。必要に応じて、headless テスト実行パラメータを使用して、ヘッド付きモードでテストを実行できます。
学習内容
テストの実行
すべてのテストを実行
以下のコマンドを使用して、すべてのテストを実行します。
dotnet test
ヘッドモードでテストを実行する
以下のコマンドを使用して、各テストでブラウザウィンドウを開くヘッド付きモードでテストを実行します。
- Bash
- PowerShell
- Batch
HEADED=1 dotnet test
$env:HEADED="1"
dotnet test
set HEADED=1
dotnet test
異なるブラウザでテストを実行: ブラウザ環境変数
BROWSER 環境変数を通じて、テストを実行したいブラウザを指定します。
- Bash
- PowerShell
- Batch
BROWSER=webkit dotnet test
$env:BROWSER="webkit"
dotnet test
set BROWSER=webkit
dotnet test
異なるブラウザでテストを実行: 起動設定
起動設定オプションを調整して、テストを実行したいブラウザを指定します。
dotnet test -- Playwright.BrowserName=webkit
複数のブラウザまたは構成でテストを実行するには、dotnet test コマンドを複数回呼び出す必要があります。そこで、BROWSER 環境変数を指定するか、runsettings ファイルで Playwright.BrowserName を設定することができます。
dotnet test --settings:chromium.runsettings
dotnet test --settings:firefox.runsettings
dotnet test --settings:webkit.runsettings
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<Playwright>
<BrowserName>chromium</BrowserName>
</Playwright>
</RunSettings>
詳細については、Microsoft ドキュメントの 選択的単体テスト を参照してください。
特定のテストを実行する
単一のテストファイルを実行するには、フィルターフラグの後に実行したいテストのクラス名を指定します。
dotnet test --filter "ExampleTest"
一連のテストファイルを実行するには、フィルターフラグの後に実行したいテストのクラス名を指定します。
dotnet test --filter "ExampleTest1|ExampleTest2"
特定のタイトルを持つテストを実行するには、フィルターフラグの後に Name~ とテストのタイトルを指定します。
dotnet test --filter "Name~GetStartedLink"
複数のワーカーでテストを実行する:
- MSTest
- NUnit
- xUnit
- xUnit v3
dotnet test -- NUnit.NumberOfTestWorkers=5
dotnet test -- MSTest.Parallelize.Workers=5
dotnet test -- xUnit.MaxParallelThreads=5
xUnit で並列にテストを実行する方法の詳細については、こちら を参照してください。
デフォルトで conservative 並列処理アルゴリズム を使用する xUnit 2.8+ を推奨します。
dotnet test -- xUnit.MaxParallelThreads=5
xUnit v3 で並列にテストを実行する方法の詳細については、こちら を参照してください。
xUnit v3 はデフォルトで conservative 並列処理アルゴリズム を使用します。
テストのデバッグ
Playwright は .NET で実行されるため、Visual Studio Code や Visual Studio などのお好みのデバッガーでデバッグできます。Playwright には Playwright Inspector が付属しており、Playwright API 呼び出しをステップ実行し、デバッグログを確認し、ロケーター を探索できます。
- Bash
- PowerShell
- Batch
PWDEBUG=1 dotnet test
$env:PWDEBUG=1
dotnet test
set PWDEBUG=1
dotnet test
Playwright Inspector と ブラウザ開発者ツール を使用したデバッグの詳細については、デバッグガイド を参照してください。