使用VSTS排除C#测试项目中的Selenium测试方法

时间:2018-03-28 13:54:03

标签: selenium azure-devops build-definition

我有一个Selenium测试项目,它被检入VSTS仓库,我正在尝试在VSTS中创建一个预定的构建定义,以运行构建项目程序集“SeleniumTest.dll”中包含的测试函数的子集。

作为构建定义的一部分,我有一个VS Test任务,如下所示:

enter image description here

为了排除我不想运行的所有测试类,我已经包含了以下runsettings文件。

<?xml version="1.0" encoding="utf-8"?>
<!-- File name extension must be .runsettings -->
<RunSettings>
  <DataCollectionRunSettings>
    <DataCollectors>
      <DataCollector friendlyName="Code Coverage" uri="datacollector://Microsoft/CodeCoverage/2.0" assemblyQualifiedName="Microsoft.VisualStudio.Coverage.DynamicCoverageDataCollector, Microsoft.VisualStudio.TraceCollector, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
        <Configuration>
          <CodeCoverage>

            <Functions>  
              <Exclude>  
                <!-- Exclude methods in the SeleniumTests.Tests\ZoneTest: --> 
                <Function>SeleniumTests.Tests\.LoginTest\..*</Function>
                <Function>SeleniumTests.Tests\.ProfileTest\..*</Function>
              </Exclude>  
            </Functions>   

          </CodeCoverage>
        </Configuration>
      </DataCollector>
    </DataCollectors>
  </DataCollectionRunSettings>
</RunSettings>

我不确定runsettings文件是否是我需要实现的目标。如果不是应该使用什么样的应用程序?

1 个答案:

答案 0 :(得分:1)

Visual Studio task包括可以过滤测试的测试过滤条件设置。

允许的运营商:

•=表示完全匹配

•!=实现完全不匹配

•〜表示包含查找

更多信息:TestCase filter

BTW,您提供的runsettings文件用于CodeCoverage而不是运行过滤器测试。