Мы используем контрактное тестирование Spring Cloud в нескольких проектах, потому что у него есть хорошие функции, и все наши проекты используют Spring. Однако эти тесты становятся довольно нестабильными, и разработчики просто отключают их, потому что они ломают сборку, даже если в интерфейсах нет никаких изменений.
У нас есть тесты, настроенные для Jenkins в онлайн-режиме, поэтому они загружают заглушки из Artifactory. Однако довольно часто (минимум два раза в месяц) тесты вылетают из-за того, что заглушки уже есть в репозитории. У нас нет доступа к удаленному репозиторию для удаления заглушек вручную, поэтому мы меняем конфигурацию для их запуска в автономном режиме. Это работает до тех пор, пока не изменится версия провайдера, так как тесты не могут найти заглушки для новой версии локально и снова вылетают, и мы снова меняем их на режим онлайн.
Как вы можете себе представить, это не идеально, и мы также обеспокоены тем, что локальные заглушки могут быть для устаревшей копии текущей версии, и мы не собираемся обнаруживать, когда поставщик вносит критические изменения.
Есть ли лучший способ настроить тесты? Было бы здорово, если бы мы могли настроить их так, чтобы они всегда загружали заглушки и переопределяли локальные.