使用的Mockito我想嘲弄一个类的属性,所以我可以验证输出如何嘲笑的第三方代码保护的方法
public class MyClass extends ThirdPartyFramework {
Output goesHere;
@Override
protected setup(){
goesHere = new Output();
}
//...
}
public abstract class ThirdPartyFramework {
protected setup(){...}
//...
}
我需要注入输出类的模拟这样我就可以验证我的代码编写了正确的输出。
但我不能只
@InjectMock
因为setup()
方法被称为 中期运行并覆盖我注射。我不能只是让公众建立在
MyClass
因为测试代码我工作 是通用的,需要为ThirdPartyFramework
所有子类的工作,所以我只有一个参考ThirdPartyFramework
,这意味着setup()
受到保护。
+1我正准备自己提供这些答案。总是将你的第三方库包装成你可以以你需要的方式实际模拟的东西。 –