如何按类别筛选 Visual Studio 2012 中的单元测试



我已经切换到使用VS 2012,对于大多数部分来说,它很棒。问题是我找不到如何按类别过滤我的单元测试?

假设你已经使用了 TestCategoryAttribute,如下所示:

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

在"测试资源管理器"窗口中,若要包括特定类别,请在筛选器文本框中键入以下内容: Trait:"MyTestCategory" 若要删除特定类别的测试,请在筛选器文本框中键入以下内容:
-Trait:"MyTestCategory"

您可以筛选出或包含多个类别。 这允许你在"测试资源管理器"窗口中筛选出集成测试和自动化 UI 测试,以便可以更有效地使用"生成后运行测试"。

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

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

我也

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

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

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

从VS Team的一名成员那里,他们了解了这个缺失功能的重要性。它位于积压工作中,并且应该在以后的构建/更新中可用。

最新更新