我正在使用JSONObject(madison.util.json.JSONObject)的自定义类而不是标准的org.json.JSONObject,并且正在尝试使用PowerMockito模拟对JSONObject.class的构造函数(String)调用。
PowerMockito.whenNew(JSONObject.class).withArguments(String.class).thenReturn(jsonStub);
我正在跟踪错误:
No constructor found in class 'madison.util.json.JSONObject' with parameter types: [ null ].
有人可以告诉我这里有什么问题吗?
由于
答案 0 :(得分:1)
您将Class作为参数传递而不是String。 要传递字符串而不注意其值,可以使用:
PowerMockito.whenNew(JSONObject.class).withArguments(Matchers.anyString()).thenReturn(jsonStub);
否则,如果需要String.class作为参数,请尝试:
whenNew(MimeMessage.class).withParameterTypes(MyParameterType.class).withArguments(isA(MyParameter.class)).thenReturn(mimeMessageMock);
https://groups.google.com/forum/#!msg/powermock/ncH_2u39UBM/Rtk0-_FufzQJ