我有一个抽象的基类,它定义了具体和抽象的方法。我想知道是否有一种方法,使用JMockit来模拟这种类型,这样我就可以声明对抽象方法的期望并测试具体方法的实现。
显然,我可以在不使用任何模拟框架的情况下执行此操作,只需在我的测试中定义抽象框架的子类。然后我可以覆盖抽象方法来返回我需要的东西。我只是想知道是否有一种更为光滑,黑魔法的JMockit方法来做到这一点。
答案 0 :(得分:3)
在抽象类上使用@Mocked
并在其抽象方法上记录/验证期望。如果要在模拟类中执行非抽象方法,则通过将JMockit创建的模拟实例传递给Expectations(Object...)
或NonStrictExpectations(Object...)
构造函数来应用部分模拟。