问题描述
我想弄清楚是否可以在测试 (Java) 中手动重置断路器。我目前正在为其添加睡眠以重置自身,但并不理想,因为测试将运行更长的时间。
我想注入 CircuitBreakerRetry
并手动更改状态,但它是包私有的,因此不是一个选项。
Histryx
进行了手动重置,目的与我想知道 Micronaut
中是否有任何内容的目的相同。
目前我在客户端方法上注释了它:
class MyClient {
@CircuitBreaker(
delay = "${config.client.circutBreaker.delay}",reset = "${config.client.circutBreaker.resetTimeout}",attempts = "${config.client.circutBreaker.maxFailures}"
)
public Single<JsonNode> callClient() {
<...>
}
}
在测试中,我注入 MyCient
并使用 wiremock
模拟端点。因此,如果我在 wiremock it opens the circuit and to close I need to wait
resetTimeout` 中抛出错误或模拟超时。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)