Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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
Visual studio 2012 如何使用VS2012、TFS Build和NUnit从运行中排除测试_Visual Studio 2012_Tfs_Nunit_Tfsbuild - Fatal编程技术网

Visual studio 2012 如何使用VS2012、TFS Build和NUnit从运行中排除测试

Visual studio 2012 如何使用VS2012、TFS Build和NUnit从运行中排除测试,visual-studio-2012,tfs,nunit,tfsbuild,Visual Studio 2012,Tfs,Nunit,Tfsbuild,我有以下设置 Visual studio 2012更新2 NUnit测试适配器Beta 4 努尼特2.62 我使用NUnit的以下属性Category或MSTest的TestCategory标记测试: [Category("WebServer")] public void FooTest() { //test } [TestCategory("WebServer")] public void FooTest2() { //test } 在TFS构建模板中,我设置了属性 基本->1。测试

我有以下设置 Visual studio 2012更新2 NUnit测试适配器Beta 4 努尼特2.62

我使用NUnit的以下属性Category或MSTest的TestCategory标记测试:

[Category("WebServer")]
public void FooTest() {
 //test
}


[TestCategory("WebServer")]
public void FooTest2() {
 //test
}
在TFS构建模板中,我设置了属性

  • 基本->1。测试源->测试用例筛选到值:TestCategory=Web服务器
  • 当构建执行时,不执行任何测试。卸下筛选器,然后再次运行所有测试

    生成日志的输出是

    C:\Builds\2\Proj\Build\bin\Debug\Tests.Integration.dll C:\Builds\2\Proj\Build\bin\Debug\Tests.Unit.dll C:\Builds\2\Proj\Build\bin\Debug\Tests.Web.dll C:\Builds\2\Proj\Build\bin\Debug\TestStack.BDDfy.dll中没有可用的测试。请确保已安装的测试发现者和执行者、平台和框架版本设置适当,然后重试

    我如何根据类别名称排除测试,有什么线索吗? 如果使用NUnit控制台运行程序,我可以很容易地验证该属性是否有效。

    从中可以看出,您无法在NUnit测试上使用TestCategory筛选器,只能在MSTest测试上使用


    请注意,您似乎正在更改TFS生成定义上的属性,而不是生成模板上的属性。这是我所期望的,因为更改构建定义将是错误的

    回答了一个老问题,因为这是谷歌返回的首批结果之一


    从这一点来看,这似乎是1.1版中已修复的错误,不幸的是(截至2014年1月22日)在使用v1.1+时,该版本尚未发布到nuget,测试类别可用于TFSBuild。您只需在测试项目中安装该软件包,并在生成定义中配置测试用例过滤器。

    相关感谢emp,很高兴知道它现在适用于TFS。我们从TFS搬到了TeamCity,不久就解决了这个问题。