Chaos Monkey Spring Boot работает в среде разработки, но не работает для функционального тестирования в тестовой среде
Я пытаюсь запустить ChaosMonkey для проверки устойчивости. Я использую Spring Boot и класс WebTestClient для выполнения запросов API в тестах функциональной устойчивости огурца. Ответы показывают, что задержка Chaos Monkey настроена правильно, но я не вижу никакой задержки. Кто-нибудь знает, почему это не работает для моих тестов?
Моя конфигурация наблюдателя (запрос из теста):
{
"controller": false,
"restController": false,
"service": false,
"repository": false,
"component": false,
"restTemplate": false,
"webClient": false,
"actuatorHealth": false,
"beans": []
}
Моя штурмовая конфигурация (запрос из теста):
{
"level":1,
"latencyRangeStart":5000,
"latencyRangeEnd":5000,
"latencyActive":true,
"watchedCustomServices":["com.my.correct.repository.ClassName"]
}
Мой файл application-test.properties соответствует моему файлу application-dev.properties, который РАБОТАЕТ.
spring.profiles.include=resilience4J-test,chaos-monkey
server.error.include-message=always
chaos.monkey.enabled=true
management.endpoint.chaosmonkey.enabled=true
management.endpoint.chaosmonkeyjmx.enabled=true
management.endpoints.web.exposure.include=health,info,chaosmonkey
management.endpoint.health.show-details=always
management.health.circuitbreakers.enabled=true
management.endpoint.circuitbreakers.enabled=true
Я использую Chaos Monkey 2.5.4 и Spring Boot 2.3.12.
1 ответ
На самом деле я только что понял, что вам нужно добавить @ComponentScan в тестовое приложение, чтобы обезьяна Хаоса могла обнаруживать компоненты и аннотации. Теперь он отлично работает для меня.