JMockit - 无法模拟类

时间:2016-01-15 14:16:23

标签: java jmockit

我无法模拟一个班级的公共最终字段。

我有一个带有公共最终字段(复杂对象)的锁定类。

当我运行测试时,Jmockit返回Null指针异常。

那个锁定的类没有该字段的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;
}

// TEST

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 个答案:

没有答案