当前位置:  开发笔记 > 编程语言 > 正文

如何让Junit 4忽略基础测试类?

如何解决《如何让Junit4忽略基础测试类?》经验,为你挑选了4个好方法。

我有许多测试的基类,它们都有一些帮助方法.

它本身并没有对它进行任何测试,但JUnit(在eclipse中)正在调用它上面的测试运行器并抱怨没有方法可以测试.

怎么能让它忽略这个课?

我知道我可以添加一个dummyTest可以解决问题的方法,但它也会出现在所有子类中.

建议?



1> guerda..:

用于@Ignore注释.它也适用于课程.看到这个:

@Ignore public class IgnoreMe {
                        @Test public void test1() { ... }
                        @Test public void test2() { ... }
                }

此外,您可以使用@Ignore注释包含测试方法的类,并且不会执行任何包含的测试.

来源:JUnit JavaDoc



2> matt burns..:

就像一张纸条,我总是建议给出一个忽略的理由:

@Ignore("This test will prove bug #123 is fixed, once someone fixes it")

我希望在运行ant测试时使用的junit xml报告格式化程序有一天会包含忽略的计数(以及原因)以及通过,失败和错误.


几年过去了,但是错误#123尚未修复。)

3> Aaron Digull..:

使类abstract成为JUnit 4就足够了.如果它不起作用,请仔细检查您正在使用的JUnit版本.

这也传达了你的意图,这只是一个测试的片段.

它还可以防止JUnit将类中的测试计为"忽略"(因此忽略测试的最终计数将是您所期望的).

或者,重命名该类.大多数运行程序使用类名来确定哪些类是测试,哪些是帮助程序.在具有默认设置的Maven中,您只需确保基类不以开头或结尾Test而不是以TestCase(http://maven.apache.org/surefire/maven-surefire-plugin/examples/结尾).included-exclusion.html)


对于JUnit 4,“抽象”就足够了。
您不需要`@ Ignore`。抽象就足够了(我认为最好)

4> Tal Avissar..:

有2个选项:

    您应该创建基本测试类abstract,而Junit4就足够了。如果使用@Igonre属性,它将显示为忽略的测试(并将其添加到测试总数中)。

    您可以更改测试类的名称,使其在测试名称的开头或结尾不带有单词 Test(区分大小写),或者在单词末尾不带有单词TestCase。

顺便说一句:@Igonre用于不同的用例,当您想忽略特定的测试时。

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有