vstest.console可以根据所有匹配的特征筛选测试

本文关键字:特征 测试 筛选 console vstest | 更新日期: 2023-09-27 18:27:15

正如这篇MSDN文章中所记录的,vstest.console可以过滤测试以按特征运行。例如,示例vstest.console命令可能如下所示:

"C:'Program Files (x86)'Microsoft Visual Studio 14.0'Common7'IDE'CommonExtensions'Microsoft'TestWindow'vstest.console.exe" "C:'mytest.dll" /TestCaseFilter:"TestCategory=traitA|TestCategory=traitB|traitN" /logger:trx

实际上,整篇文章都说,将使用以下语法提供多种特性:

<Expression> is of the format <property>=<value>[|<Expression>].

我的问题是,当你提供的不仅仅是一个特征时,测试会使用逻辑进行筛选,而官方文档没有说明如何筛选与所有给定特征匹配的测试。

vstest.console可以根据所有匹配的特征筛选测试

提供的文章具有未记录的表达式格式。如果使用&而不是|来提供多个特征,则将筛选与所有给定特征匹配的测试

例如:

"C:'Program Files (x86)'Microsoft Visual Studio 14.0'Common7'IDE'CommonExtensions'Microsoft'TestWindow'vstest.console.exe" "C:'mytest.dll" /TestCaseFilter:"TestCategory=traitA&TestCategory=traitB&traitN" /logger:trx

是的,MSDN页面中缺少该选项。然而,工具本身确实提到了这一点。特别是从运行vstest.console.exe/?的输出中查找/TestCaseFilter开关

感谢您的报道。