尝试遵循这个答案,但似乎不起作用 https://stackoverflow.com/a/63574695/22548444
编辑:此链接无效。我注意到一条评论说“我不认为 TestCaseFilter 是运行设置文件中允许的属性之一。您可能需要过滤套件或针对特定程序集运行。”
我有以下内容,我根据 NUnit 中的类别进行测试
代码
[Test]
[Category("Test1")]
public void Foo()
{
bool isTrue = true;
Assert.That(isTrue, Is.True);
}
运行设置文件
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<RunConfiguration>
<TestCaseFilter>TestCategory=Test1</TestCaseFilter>
</RunConfiguration>
</RunSettings>
yaml 管道
- task: VSTest@2
inputs:
testSelector: testPlan
testPlan: 1
testSuite: 2,3
testConfiguration: 4
searchFolder: $(System.DefaultWorkingDirectory)
vsTestVersion: toolsInstaller
runSettingsFile: "PATH TO RUNSETTINGS"
我确实看到我的运行设置文件已加载到日志中,但它似乎不仅仅过滤那些测试,而且似乎运行所有测试。 我应该只运行这一项测试。
我不想通过测试程序集运行,而是通过发布测试计划运行。有没有办法通过过滤器来实现这一点?
在我这边测试,
runSettingsFile
仅在testAssembly
任务中使用VSTest@2
时才有效,恐怕当test plan
与任务一起使用时它不起作用。