运行和调试测试
简介
您可以运行单个测试、一组测试或所有测试。测试可以在不同的浏览器上运行。默认情况下,测试以无头模式运行,这意味着在运行测试时不会打开浏览器窗口,结果将在终端中显示。如果您愿意,可以通过使用 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 并行运行测试的更多信息,请参阅此处。
我们推荐 xUnit 2.8+,它默认使用保守并行算法(conservative
parallelism algorithm)。
调试测试
由于 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以及使用浏览器开发者工具进行调试的信息。