我已切换到使用VS 2012,对于大多数部件而言,它非常棒。 问题是我找不到如何按类别过滤我的单元测试?
答案 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构建/更新中可用。