0

我的一个项目使用规范流 + MSTest + MSBuildGeneration 工具。我在我的 srsprofile 中定义了几个过滤器标签,并创建了一个运行设置文件,如下所示

<?xml version="1.0" encoding="utf-8"?>
<RunSettings>
  <!-- Configurations that affect the Test Framework -->
  <RunConfiguration>
    <!-- Path relative to solution directory -->
    <!--<ResultsDirectory>..\..\..\Reports\LastRun\</ResultsDirectory>-->

    <!-- [x86] | x64  
      - You can also change it from menu Test, Test Settings, Default Processor Architecture -->
    <TargetPlatform>x86</TargetPlatform>

    <!-- Framework35 | [Framework40] | Framework45 -->
    <TargetFrameworkVersion>Framework46</TargetFrameworkVersion>
  </RunConfiguration>

  <!-- test adapter -->
  <MsTest>
    <Profile>sample.srprofile</Profile>
  </MsTest>
</RunSettings>

单元测试提供者

  <specFlow>
    <stepAssemblies>
      <stepAssembly assembly="MyProject.Steps" />
    </stepAssemblies>
    <unitTestProvider name="MsTest" />
    <!-- For additional details on SpecFlow configuration options see http://go.specflow.org/doc-config -->
  </specFlow>

由于我使用的是 MSTest 而不是 SpecRun,因此我认为适配器应该是 MsTest,但是对于定义的过滤器,测试没有显示在 Visual Studio 2017 的测试资源管理器中。我做错了吗?是否有其他方法可以在 srsprofile 中为 mstest 使用过滤器标签?

4

1 回答 1

1

srProfile- 文件是 SpecFlow+ Runner(又名 SpecRun)的一个功能。它的功能仅在此处可用。您不能将它与 MSTest 一起使用。

据我所知,根本没有办法在 runsettings 文件中设置过滤器。

它的文档是:https ://docs.microsoft.com/en-us/visualstudio/test/configure-unit-tests-by-using-a-dot-runsettings-file?view=vs-2019


全面披露:我是 SpecFlow 和 SpecFlow+ 的社区经理

于 2020-11-17T08:38:12.480 回答