运行和调试测试
简介
您可以运行单个测试、一组测试或所有测试。测试可以在不同的浏览器上运行。默认情况下,测试以无头方式运行,这意味着在运行测试时不会打开浏览器窗口,结果将在终端中看到。如果您愿意,可以使用 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 文档中的选择性单元测试。
运行特定测试
要运行单个测试文件,请使用 filter 标志,后跟要运行的测试的类名。
dotnet test --filter "ExampleTest"
要运行一组测试文件,请使用 filter 标志,后跟要运行的测试的类名。
dotnet test --filter "ExampleTest1|ExampleTest2"
要运行具有特定标题的测试,请使用 filter 标志,后跟 Name~ 和测试的标题。
dotnet test --filter "Name~GetStartedLink"
使用多个 worker 运行测试:
- MSTest
- NUnit
- xUnit
dotnet test -- NUnit.NumberOfTestWorkers=5
dotnet test -- MSTest.Parallelize.Workers=5
dotnet test -- xUnit.MaxParallelThreads=5
有关使用 xUnit 并行运行测试的更多信息,请参阅此处。
我们推荐使用 xUnit 2.8+,它默认使用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 以及使用浏览器开发者工具进行调试。