Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从测试套件中选择测试_C#_Azure Devops_Azure Pipelines_Test Suite_Test Plan - Fatal编程技术网

C# 如何从测试套件中选择测试

C# 如何从测试套件中选择测试,c#,azure-devops,azure-pipelines,test-suite,test-plan,C#,Azure Devops,Azure Pipelines,Test Suite,Test Plan,我有一个包含以下任务的阶段: 有2个测试套件和8个测试用例。 我只想执行特性文件中带有标记“download”的测试用例 当我在本地执行命令时 dotnet test <name>.dll --filter TestCategory=download dotnet test.dll--filter TestCategory=download 一切正常,但当我尝试在任务的“其他控制台选项”中添加命令行选项时 测试用例不会被过滤,所有测试用例都会被执行 我做错了什么?什么可以帮助

我有一个包含以下任务的阶段:

有2个测试套件和8个测试用例。 我只想执行特性文件中带有标记“download”的测试用例

当我在本地执行命令时

dotnet test <name>.dll --filter TestCategory=download
dotnet test.dll--filter TestCategory=download
一切正常,但当我尝试在任务的“其他控制台选项”中添加命令行选项时 测试用例不会被过滤,所有测试用例都会被执行


我做错了什么?什么可以帮助我过滤测试?

从测试计划运行时,其他控制台选项不受尊重。您需要将其更改为使用程序集(与本地副本匹配)选择测试,或者需要使用源代码中未绑定的筛选条件筛选套件中的测试

如果展开该选项的信息:

这些选项不受支持,在运行测试时将被忽略 使用代理作业的“多代理”并行设置或 使用“测试计划”选项运行测试。可以指定选项 改为使用设置文件


马特是对的。Visual Studio测试任务中的
其他控制台选项
不支持从测试计划运行

要解决此问题,可以使用
.runsettings
文件

现在,VS 16.6 preview 3之后的版本可以支持直接向.runsettings添加
testcasefilter

以下是一个例子:

.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>
....

1.
测试结果
TestCategory=xxx
....
管道设置:

您可以在Visual Studio测试平台安装程序任务中安装
VS 16.7.1

然后可以在VisualStudio测试任务中设置测试平台版本和runsettings文件


这是一张关于的票。

谢谢你的回答,马特!你能告诉我在这种情况下如何不使用设置文件吗?(使用.NETCore3.1创建的项目)我不认为TestCaseFilter是runsettings文件中允许的属性之一。您可能需要筛选套件,或者针对特定程序集运行套件。嗨,阿特西姆。这张票有更新吗?请随时告诉我答案是否符合您的要求。你可以考虑一下。