有2个测试套件和8个测试用例。 我只想在功能文件中执行带有“下载”标签的测试用例
当我在本地执行命令时
dotnet test <name>.dll --filter TestCategory=download
一切都很好,但是当我尝试在任务的“其他控制台选项”中添加命令行选项时 测试用例没有被过滤,而是全部执行。
我在做错什么,什么可以帮助我过滤测试?
答案 0 :(得分:1)
从测试计划运行时,其他控制台选项不可用。您可能需要更改它以使用程序集(与您的本地副本匹配)选择测试,或者需要使用未绑定在源代码中的过滤条件来过滤套件中的测试。
如果您扩展该选项的信息:
这些选项不受支持,在运行测试时将被忽略 使用代理作业的“多代理”并行设置 使用“测试计划”选项运行测试。可以指定选项 而是使用设置文件。
答案 1 :(得分:1)
马特是正确的。 Visual Studio测试任务中的other console options
不支持从测试计划中运行。
要解决此问题,您可以使用.runsettings
文件。
现在,VS 16.6 Preview 3之后的版本可以支持将testcasefilter
直接添加到.runsettings。
这里是一个例子:
.runsettings文件
<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
<!-- Configurations that affect the Test Framework -->
<RunConfiguration>
<MaxCpuCount>1</MaxCpuCount>
<!-- Path relative to directory that contains .runsettings file-->
<ResultsDirectory>.\TestResults</ResultsDirectory>
<TestCaseFilter>TestCategory=xxx</TestCaseFilter>
</RunConfiguration>
....
管道设置:
您可以在VS 16.7.1
任务中安装Visual Studio Test Platform Installer
。
然后,您可以在Visual Studio测试任务中设置测试平台版本和runsettings文件。
这是一张有关testcasefilter in runsettings file的票。