【发布时间】:2013-12-11 15:45:32
【问题描述】:
首先我想说的是,我正在使用遗留代码,无论我多么想更改它都无法更改。
除此之外,我要做的是验证是否调用了 super.method()。这就是我想用 Mockito/Junit 测试的具体内容:
class foo extends JApplet(){
public void destroy(){
super.destroy();
}
}
如果测试用例不是被调用的超级方法,通常这样的事情就足够了:
verify(foo).destroy();
我已经看到这个问题被问了几次,通常回答是“继承不好,更改你的代码”,不幸的是我根本做不到。有没有人知道我可以做任何框架或小技巧来测试这个?
提前致谢 - 我知道这是一个棘手的问题!
【问题讨论】:
-
测试的小技巧?您可以临时更改您的代码吗?在 super.destroy() 中的控制台上打印一些东西。您可以访问源代码吗?
-
不幸的是,更改源代码完全没有问题。
标签: java testing junit mockito super