运行和调试测试
简介
您可以运行单个测试、一组测试或所有测试。测试可以在不同的浏览器上运行。默认情况下,测试以无头模式运行,这意味着在运行测试时不会打开浏览器窗口,结果将在终端中显示。如果您愿意,可以通过使用 `headless` 测试运行参数在有头模式下运行测试。
您将学到
运行测试
运行所有测试
使用以下命令运行所有测试。
dotnet test
在有头模式下运行测试
使用以下命令在有头模式下运行测试,为每个测试打开一个浏览器窗口。
- Bash
- PowerShell
- 批处理
HEADED=1 dotnet test
$env:HEADED="1"
dotnet test
set HEADED=1
dotnet test
在不同浏览器上运行测试:浏览器环境变量
通过 `BROWSER` 环境变量指定您想在哪个浏览器上运行测试。
- Bash
- PowerShell
- 批处理
BROWSER=webkit dotnet test
$env:BROWSER="webkit"
dotnet test
set BROWSER=webkit
dotnet test
在不同浏览器上运行测试:启动配置
通过调整启动配置选项指定您想在哪个浏览器上运行测试
dotnet test -- Playwright.BrowserName=webkit
要在多个浏览器或配置上运行测试,您需要多次调用 `dotnet test` 命令。您可以通过运行设置文件指定 `BROWSER` 环境变量或设置 `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 并行运行测试的更多信息,请参阅此处。
我们推荐使用 xUnit 2.8+,它默认使用`conservative` 并行算法。
dotnet test -- xUnit.MaxParallelThreads=5
有关使用 xUnit v3 并行运行测试的更多信息,请参阅此处。
xUnit v3 默认使用`conservative` 并行算法。
调试测试
由于 Playwright 在 .NET 中运行,您可以使用您选择的调试器(例如 Visual Studio Code 或 Visual Studio)对其进行调试。Playwright 附带了 Playwright Inspector,它允许您逐步执行 Playwright API 调用,查看其调试日志并探索定位器。
- Bash
- PowerShell
- 批处理
PWDEBUG=1 dotnet test
$env:PWDEBUG=1
dotnet test
set PWDEBUG=1
dotnet test
查看我们的调试指南,了解有关Playwright Inspector以及使用浏览器开发者工具进行调试的更多信息。