java JMockit无法模拟类的公共final字段
我不能嘲笑一门课的公开期末考试
我有一个带有公共final字段(复杂对象)的锁定类
当我运行测试Jmockit时,它会返回空指针异常
那个被锁定的类没有该字段的getter或setter,我们通常直接访问它,但使用@Mocked,它似乎无法自动模拟该字段,我做错了什么
这是我遇到的情况的一个例子:
//测试方法
public static void xxx(final ComplexObjectA objA, ComplexObjectB objB, ComplexObjectC objC){
try{
//some code here
anotherMethod(objB.myObject);
} catch (blabla){}
}
//复杂对象B
public class ComplexObjectB extends SomeClass{
public final SubComplexObject myObject;
}
//测试
public class MyTest{
@Mocked
ComplexObjectA objA;
@Mocked
ComplexObjectB objB;
@Mocked
ComplexObjectC objC;
@Test
public void checkSomeNull() throws SubjectException, IOException, SQLException {
new Expectations(){{
objB.myObject.getProperty("XYZ"); result = "1";
}};
MyClass.xxx(objA,objB,null);
}
}
我做错了什么
共 (0) 个答案