在MSTest的测试视图中,我怎样才能得到所有没有分类的测试列表?

问题描述:

我正在使用MSTest,大部分单元测试都没有TestCategory属性,但我想将一些测试放入“慢”类。然后,我希望能够轻松地运行所有未分配类别的测试。在MSTest的测试视图中,我怎样才能得到所有没有分类的测试列表?

当我进入测试视图时,我可以通过测试类别进行过滤,但是我无法输入空关键字。我可以很容易地找到我的“慢”,但如何找到我的非慢的?我试图避免在我的所有测试中加入测试类别。

我想这不是世界末日,如果我必须...搜索和替换应该让他们都有,但如果有办法找到未分类,我想知道。

在测试列表编辑器中,将测试类别添加为列,将其添加为无,然后对测试类别进行排序。没有类别的测试将位于顶部。不幸的是,你不能按测试类别进行分组。

+0

对,所以答案是,“你不能”。我结束了对每一个的描述并将其用作一个类别,因为您可以按描述进行分组。 – 2010-11-25 01:41:54

您也可以从命令行中排除这些测试。

mstest /testcontainer:foo.tests.dll /category:!Slow 
+0

'/ testcontainer'选项是为了使'/ category'选项有效所必需的。 – xmedeko 2016-09-23 16:48:25

看来/category:!Slow完全不起作用。坏事! 所以有必要把所有的测试,例如[TestCategory("unit")]属性。

另一种更好的方法是按项目分开单元和集成测试,并分别运行这些测试。

+0

您必须使用'/ testcontainer'选项才能使用'/ category'选项。请参阅[MSTest页面](https://msdn.microsoft.com/en-us/library/ms182489.aspx)。 – xmedeko 2016-09-23 16:46:33