Java 如何验证使用任何参数调用方法?
我想用Mockito验证()是否调用了方法。因为我不知道参数,所以我想用Java 如何验证使用任何参数调用方法?,java,junit,mockito,Java,Junit,Mockito,我想用Mockito验证()是否调用了方法。因为我不知道参数,所以我想用any()参数进行验证。可能吗?目前,我得到了“错误,想要x,却发现y”。 我不关心传递的参数,我只想知道是否调用了该方法。 提前谢谢 截至目前,我已尝试: when(userBean.getProfile().getLanguage().getValue()).thenReturn("fr"); verify((userBean), atLeastOnce()).getProfile().getLanguage().get
any()
参数进行验证。可能吗?目前,我得到了“错误,想要x,却发现y”。
我不关心传递的参数,我只想知道是否调用了该方法。
提前谢谢
截至目前,我已尝试:
when(userBean.getProfile().getLanguage().getValue()).thenReturn("fr");
verify((userBean), atLeastOnce()).getProfile().getLanguage().getValue();
userBean被RETURN\u DEEP\u STUBS
模拟。但是获取空指针异常。这可能是因为userBean是一个EJB?如:
验证仅适用于链中的最后一个模拟。您可以使用验证模式
例如:
/* BAD */ verify(userBean, atLeastOnce()).getProfile().getLanguage().getValue();
/* GOOD */ verify(userBean.getProfile().getLanguage(), atLeastOnce()).getValue();
(作为单独的答案添加,指向文档链接。)显示您已尝试的内容。@Matsemann抱歉,已更新您要验证的方法是什么
getProfile()
,getLanguage()
或getValue()
?@DanTemple getValue,我已经解决了。它是为了验证(userBean.getProfile().getLanguage,atlestOnce()).getValue();如果你已经解决了,我不知道为什么。请关闭这些问题,这样其他人就不会浪费时间为你解决问题。