在Eclipse中运行JUnit Test时不要执行某些代码

时间:2013-02-26 14:04:10

标签: eclipse tomcat junit

我在tomcat容器中开发应用程序时使用Eclipse和JUnit 4。容器管理与Oracle数据库的连接。

在使用JUnit进行测试时,我遇到了以下问题:在测试主题的构造函数中有类似这样的内容:

public Subject() {
    // stuff
    FancySingleton.getInstance().getFancy("stuff");
}

不幸的是,方法getFancy()尝试执行一个它无法执行的查询,因为JUnit不会在tomcat容器中运行并最终以无限循环结束。

我的第一个想法是赞美代码。第二个想法似乎是一个坏主意。我可能忘记在提交之前删除评论。

我的第二个想法是强调eclipse的代码,以便在运行JUnit测试时不执行它。但它需要eclipse来支持这种方法。

最后我想到了类似预处理器指令的东西。

你的想法是什么?只是将布尔值传递给构造函数就不是处理这种情况的干净方法。

1 个答案:

答案 0 :(得分:3)

你要么模仿FancySingleton,要么你做得正确并注入实现。