2
public class A{
    protected Integer methodA(String a){
        //some code is included;
        return new Integer(1);
    }
}
public class B extends B{
    String b = "AnyThing";
    methodA(b);
    //there are also other methods that will be tested
}

以下是部分测试代码

B classUnderTest = createMockBuild(B.class).addMockedMethod(B.class.getDeclaredMethod(methodA(), String.class)).createMock;
expect(classUnderTest.methodA(anyObject(String.class))).andReturn(new Integer(1));

第二段代码的第二行甚至无法通过编译。哪里错了?

4

1 回答 1

0

简,关于你的主要问题,这条线

expect(classUnderTest.methodA(anyObject(String.class))).andReturn(new Integer(1));

@Test如果该类与您的测试对象相同,则将成功编译package- 在这种情况下,两个类AB(如果class B extends A)。受保护的实例方法仅对同一包中的类可见。

祝你好运!

于 2013-06-07T10:48:59.653 回答