首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多次模拟或模拟HttpResponse

多次模拟或模拟HttpResponse
EN

Stack Overflow用户
提问于 2022-03-17 18:17:09
回答 1查看 77关注 0票数 0

我想对可能返回HTTP代码(SERVICE_UNAVAILABLE)的服务进行JUnit测试。对我来说,这可能是不可用的,因为容器被放大并且还无法到达。在这种情况下,我让代码重试服务最多3次。

我可以模拟HttpResponse进行测试,但只有一种情况。Mockito能否创建一个模拟对象,在第一次尝试时返回一件东西,跟踪尝试次数,并根据尝试号返回不同的结果?我唯一能想到的就是实现我自己的HttpResponse。有什么更好的方法吗?

谢谢,伍德斯曼

EN

回答 1

Stack Overflow用户

发布于 2022-03-17 19:35:57

阻塞连续调用(迭代器样式的阻塞)

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

代码语言:javascript
复制
when(mock.someMethod("some arg"))
   .thenThrow(new RuntimeException())
   .thenReturn("foo");

 //First call: throws runtime exception:
 mock.someMethod("some arg");

 //Second call: prints "foo"
 System.out.println(mock.someMethod("some arg"));

 //Any consecutive call: prints "foo" as well (last stubbing wins).
 System.out.println(mock.someMethod("some arg"));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71517232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档