我想与Mockito verify()是否调用一个方法。由于我不知道该参数,因此我希望以any()参数进行验证。可能吗?目前,我收到“错误,想要x并且找到y”。
我不在乎传递的参数,我只想知道该方法是否被调用。
提前致谢。

到目前为止,我已经尝试过:

when(userBean.getProfile().getLanguage().getValue()).thenReturn("fr");
verify((userBean), atLeastOnce()).getProfile().getLanguage().getValue();


userBean已被RETURN_DEEP_STUBS嘲笑。虽然得到一个空指针异常。可能是由于userBean是EJB造成的?

最佳答案

Mockito documentation for RETURNS_DEEP_STUBS中所示:


验证仅适用于链中的最后一个模拟。您可以使用验证模式。


例如:

 /* BAD */ verify(userBean, atLeastOnce()).getProfile().getLanguage().getValue();
/* GOOD */ verify(userBean.getProfile().getLanguage(), atLeastOnce()).getValue();


(添加为指向文档链接的单独答案。)

10-06 01:35