抛出异常,显示传递到 Java 8 Mockito 中 void 方法的参数

问题描述 投票:0回答:1

我有一个使用 Mockito 的测试套件,如果传递了正确的参数,它会模拟某些 void 函数,如果传递了错误的参数,则会抛出错误。当它检测到不正确的参数时,我希望它也打印在抛出的异常中收到的参数。

doNothing()

我似乎找不到办法做到这一点,因为附加答案不适用于 void 返回类型。这需要适用于 Java 8。

java java-8 mockito
1个回答
1
投票
Mockito.doThrow(new Exception(String.format("Failed step 1. Received parameters: %s, %s", param1, param2))) .when(factory).load(any(), any()); Mockito.doNothing().when(factory).load(eq("correct"), eq("correct"));

以便按照您期望的方式打印参数。它将允许您使用

doAnswer
方法访问模拟方法的参数。
getArgument(int i)

© www.soinside.com 2019 - 2024. All rights reserved.