首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让Junit 4忽略基础测试类?

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

Stack Overflow用户
提问于 2009-01-20 23:00:15
回答 6查看 48.9K关注 0票数 67

我有一个用于许多测试的基类,它有一些它们都需要的助手方法。

它本身没有任何测试,但是JUnit (在eclipse中)正在调用它的测试运行器,并抱怨没有要测试的方法。

怎样才能让它忽略这个类呢?

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

有什么建议吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-01-20 15:12:13

使用to @Ignore注解。它也适用于类。请看这一条:

代码语言:javascript
复制
@Ignore public class IgnoreMe {
                        @Test public void test1() { ... }
                        @Test public void test2() { ... }
                }

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

来源:JUnit JavaDoc

票数 100
EN

Stack Overflow用户

发布于 2009-01-29 13:05:40

作为说明,我总是建议给出一个忽略的原因:

代码语言:javascript
复制
@Ignore("This test will prove bug #123 is fixed, once someone fixes it")

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

票数 32
EN

Stack Overflow用户

发布于 2013-03-26 23:27:41

在JUnit 4中创建类abstract就足够了。如果它不能工作,请仔细检查您使用的是哪个版本的JUnit。

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

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

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

票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/461644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档