为什么我们不能嘲笑最后一堂课?

时间:2016-05-05 07:35:50

标签: java unit-testing mocking final

我是Java的新手,并没有做过一般的单元测试 有人能告诉我为什么不能嘲笑final课程吗?

2 个答案:

答案 0 :(得分:4)

java世界中最常见的模拟框架无法模拟final类/方法,因为它们通常基于创建代理。不可能为final类创建代理,因为我们不能将extends类作为final类的子类。

但是,有一些解决方法和解决方案,其中许多都可以找到here

答案 1 :(得分:2)

JMockit能够模拟最终的类,方法,静态和私有字段,因为它主要基于java.lang.instrument包类和创建代理对象。