gpt4 book ai didi

java - Mockito 重新 stub 方法已经用 thenthrow stub

转载 作者:搜寻专家 更新时间:2023-10-30 21:40:44 25 4
gpt4 key购买 nike

我遇到了 mockito 的问题。我正在开发一个网络应用程序。在我的测试中,用户管理被模拟了。在某些情况下,我必须更改 getLoggedInUser() 方法返回的用户。

问题是,我的 getLoggedInUser() 方法也会抛出 AuthenticationException

所以当我尝试从无用户切换到某个用户时,调用

when(userProvider.getLoggedInUser()).thenReturn(user);

抛出异常,因为 userProvider.getLoggedInUser() 已经用 thenTrow()

stub

有没有办法告诉 when 方法不关心异常?

提前致谢 - István

最佳答案

在新的 Mockito 版本中,您可以使用 stub 连续调用在第一个 can 上抛出异常并在第二个调用上返回一个值。

when(mock.someMethod("some arg"))
.thenThrow(new RuntimeException())
.thenReturn("foo");

https://javadoc.io/doc/org.mockito/mockito-core/latest/org/mockito/Mockito.html#10

关于java - Mockito 重新 stub 方法已经用 thenthrow stub ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4180209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com