VSTest测试计划中按类别运行NUnit测试过滤失效求助
针对测试计划运行NUnit测试的过滤方案
由于runsettings的RunConfiguration节点确实不支持TestCaseFilter属性,结合你通过测试计划而非测试程序集运行测试的需求,提供以下可行的过滤方法:
方法1:直接在VSTest@2任务中配置测试筛选器
在Azure DevOps的VSTest@2任务配置界面,找到Test filter criteria输入框,直接填入NUnit的筛选语法:
TestCategory=Test1
该条件会直接作用于测试计划加载的测试用例,替代runsettings中无效的配置,运行时仅执行标记了[Category("Test1")]的测试。
方法2:通过测试计划自定义字段筛选
- 在Azure DevOps测试计划中,给目标测试用例添加自定义字段(如
TestCategory),并为对应测试用例赋值Test1。 - 在VSTest@2任务的Test plan配置区域,点击Filter按钮,设置筛选规则:
TestCategory = Test1。 - 任务会仅运行测试计划中符合该自定义字段条件的测试用例,与代码里的
[Category]标记形成对应。
方法3:基于测试套件筛选关联的分类测试
确保测试计划中的测试用例已与代码里的测试方法完成关联(通过测试方法全名映射):
- 在测试计划的测试套件中,创建静态测试套件,筛选出所有关联了
[Category("Test1")]的测试用例。 - 在VSTest@2任务中直接选择这个筛选后的测试套件运行,无需额外配置筛选条件。
内容的提问来源于stack exchange,提问作者user22548444
相关产品推荐
相关产品推荐

