【发布时间】:2022-09-23 17:36:09
【问题描述】:
我想验证以下两个方法调用中的任何一个是否执行一次:
myLogger.logWarn(\"My 1st Warning Message\"); // depending on some randomness in my program,
myLogger.logWarn(\"My 2nd Warning Message\"); // one of these two get executed
我尝试了以下方法:
verify(myLogger).logWarn(or(\"My 1st Warning Message\", \"My 2nd Log Warning Message\"));
但是运行测试方法导致以下错误:
No matchers found for additional matcher Or(?)
-> at foobar.builder.StopBuilderTest.build(StopBuilderTest.java:141)
org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
No matchers found for additional matcher Or(?)
-> at foobar.builder.StopBuilderTest.build(StopBuilderTest.java:141)
当我只测试单个方法调用时,如下所示..
verify(myLogger).logWarn(\"My 1st Warning Message\");
..它运行良好,当logWarn() 使用参数\"My 1st Warning Message\" 调用时,我的测试总是成功的。
标签: java unit-testing mockito