我在尝试单元测试
java代码时遇到了一些麻烦,这些代码在某些时候调用了本机方法.基本上,我试图使用PowerMockito来模拟最终将调用native的类.我能够很好地模拟非void方法,但是当我尝试模拟void返回类型的方法时,我不断收到编译错误.以下是我要测试的代码示例:
public class ClassThatCallsNative {
void initObject(ByteBuffer param1, int param2) {
//calls native
}
int getId(int param1) {
//calls native
}
}
我在我的测试类中有这个代码:
PowerMockito.when(mClassThatCallsNative.getId(Mockit.anyInt())).thenReturn(0);
这行代码编译得很好,但是以下行是编译错误的地方:
PowerMockito.when(mClassThatCallsNative.initObject(Mockit.any(ByteBuffer.class), anyInt())).doNothing();
错误消息只是说无效的void参数并指向.initObject.
知道我做错了什么吗?