【发布时间】:2021-03-16 13:50:27
【问题描述】:
如何为以下方法编写 JUnit?
public static void invokeAuditService(HttpServletRequest request, Date serviceCallTime, String response,
String activityKey, JSONObject detailsReplaceVal, String pmAccountId){
AuditLogUtils.invokeAuditService(request, serviceCallTime, response, activityKey, detailsReplaceVal, pmAccountId);
}
我的代码:
@Test
public void testInvokeAuditService() {
PowerMockito.doNothing().when(WidgetHelper.class);
WidgetHelper.invokeAuditService(Matchers.anyObject(), Matchers.anyObject(), Matchers.anyObject(),
Matchers.anyObject(), Matchers.anyObject(), Matchers.anyObject());
}
我收到编译器错误: WidgetHelper类型中的invokeAuditService(HttpServletRequest, Date, String, String, JSONObject, String)方法不适用于参数(Object, Object, Object, Object, Object, Object)
更新代码:
@Test
public void testInvokeAuditService() {
PowerMockito.doNothing().when(WidgetHelper.class);
WidgetHelper.invokeAuditService(servletRequest, date, "abc", "xyz",json,
"123");
verifyStatic(WidgetHelper.class, Mockito.times(1));
WidgetHelper.invokeAuditService(servletRequest, date, "abc", "xyz",json,
"123");
}
这表示:verifystatic 之后的行“实际上与此模拟的交互为零”。
【问题讨论】:
标签: java junit mockito powermock powermockito