テストの実行とデバッグ
はじめに
単一のテスト、一連のテスト、またはすべてのテストを実行できます。テストはさまざまなブラウザで実行できます。デフォルトでは、テストはヘッドレスモードで実行されます。つまり、テストの実行中にブラウザウィンドウは開かれず、結果はターミナルに表示されます。必要に応じて、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
dotnet test -- NUnit.NumberOfTestWorkers=5
dotnet test -- MSTest.Parallelize.Workers=5
dotnet test -- xUnit.MaxParallelThreads=5
xUnit でテストを並行して実行する方法の詳細については、こちらを参照してください。
デフォルトで conservative
並列処理アルゴリズム を使用する xUnit 2.8 以降をお勧めします。
テストのデバッグ
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 と ブラウザ開発者ツール を使用したデバッグの詳細をご覧ください。