我是否可以通过指定不应出现的关键字来过滤测试结果?
背景:
我已经编写了一些C#类和方法,但是现在没有实现这些方法(我让它们抛出一个NotImplementedException,以便它们清楚地表明这一点)。我还为这些函数编写了一些测试用例,但它们当前失败了,因为这些方法抛出了NotImplementedException。这没关系,我现在期待这一点。
我想暂时忽略这些测试并查看更有意义的其他测试结果,因此我试图弄清楚如何列出没有" NotImplementedException"的结果。但是,我只能列出具有该关键字的结果,而不是那些不具备该关键字的结果。有什么方法可以列出不要的结果吗?使用一些通配符还是什么?
我在VS2012中看到了很多关于新测试资源管理器的信息,但这并不是2010年的功能,而是我正在使用的功能。
答案 0 :(得分:1)
如果您愿意,可以通过标记此测试需要抛出异常并通过测试来排除此类测试。
[TestMethod]
[ExpectedException(typeof(NotImplementedException))]
public void NotYetImplementedMethod(Object args)
{
....
}
或者,您可以为测试创建类别。这样,如果为大多数测试分配类别,则可以选择在测试资源管理器中运行哪些测试。
[TestMethod]
[Testcategory("NotImplementedNotTested")]
public void NotYetImplementedMethod(Object args)
{
....
}
最后但并非最不重要的是最简单的解决方案[Ignore]
。这将完全跳过测试。
[TestMethod]
[Ignore]
public void NotYetImplementedMethod(Object args)
{
....
}
参考:
答案 1 :(得分:0)
我还为这些函数编写了一些测试用例
如果您的测试与TFS上的Test Case
工作项相关联,您只需将测试用例的状态设置为Design
即可。然后,在Test Plans
上排除Designed
州的所有测试用例。
如果它们没有链接到实际的测试用例工作项(比如说一批单元测试),我相信最好的解决方案是Ignore
属性(如@Serv已经提到的那样)。因为我认为您不想运行尚未实施的测试,也浪费时间了解如何将其从测试结果中排除。