我正在编写一个 ArgumentMatcher,比较的内容可以归结为:
return A.value().equals(B.value()) && A.name().equals(B.name());
Run Code Online (Sandbox Code Playgroud)
不幸的是,当没有通过时,Mockito 只是告诉我它失败了。我想添加一条自定义消息,例如“值不匹配”或“名称不匹配”(当然我想提供更多信息,但在我弄清楚这个简单案例之前,这样做的意义何在进一步)。
以前(在使用 Mockito 之前),我记得匹配器有两种方法 - 一种用于检查匹配,一种用于生成失败消息(是的,编写这两种方法都很痛苦,但我现在想念第二种方法)。
知道如何做到这一点吗?任何帮助表示赞赏!
我现在明白了。Hamcrest 提供了“describeTo”方法。这和我记得的EasyMock的方法是等价的。您只需将错误条件添加到描述对象中,中提琴,您就会得到更好的失败消息。