如何按类别过滤visual studio 2012中的单元测试?

时间:2012-09-20 07:06:40

标签: visual-studio-2012

我已切换到使用VS 2012,对于大多数部件而言,它非常棒。 问题是我找不到如何按类别过滤我的单元测试?

4 个答案:

答案 0 :(得分:7)

假设您已经使用过TestCategoryAttribute:

[TestMethod, TestCategory("MyTestCategory")]
public void MyTest() {}

在“测试资源管理器”窗口中,要包含特定类别,请在过滤器文本框中键入: 特点: “MyTestCategory” 要删除特定类别的测试,请在过滤器文本框中键入以下内容: -Trait: “MyTestCategory”

您可以过滤掉或包含多个类别。这允许您在“测试资源管理器”窗口中过滤掉集成测试和自动UI测试,以便您可以更有效地使用“在构建后运行测试”。

请点击此处了解更多信息: http://msdn.microsoft.com/en-us/library/hh270865.aspx#BKMK_Searching_and_filtering_the_test_list

答案 1 :(得分:6)

在最新的Visual Studio 2012 CTP中添加了此功能。 Test Explorer现在可以选择按特征(类别)对测试进行分组,并按特征(类别)进行过滤 https://msdn.microsoft.com/en-us/library/hh270865.aspx

答案 2 :(得分:4)

我也一直在寻找这个功能,据我所知,你不能按类别过滤。我尝试使用搜索过滤器类别:" categoryName" ,但这不起作用。您似乎可以从命令行(http://msdn.microsoft.com/en-us/library/dd286683.aspx)按测试类别运行,并且可以定义要在构建中运行的类别(http:// msdn.microsoft.com/en-us/library/dd286595.aspx),但似乎无法从IDE中获得。

我希望尝试使用Visual Studio 2012的默认测试工具,但由于我对测试类别的依赖,唯一的选择似乎是第三方商业工具,例如JetBrains dotCover。

答案 3 :(得分:0)

在2012年附带的新Test Explorer中,您可以通过“测试结果”,“FileName”等对测试进行分组,但在RTM构建组中/通过“TestCategory”搜索不存在于测试资源管理器中。但是,在VS2012中,命令行和TeamBuild中有一个基于TestCategory的过滤器(使用TestCaseFilter在VS 2012 RC中运行选择性单元测试)。

来自VS Team的成员,他们了解这个缺失功能​​的重要性。它在积压中,它应该在furutre构建/更新中可用。