Тест падает раз в 30 прогонов, и только в CI. Где искать причину?

habrahabr.ru · world
Full story

An integration test passes reliably locally but fails in CI roughly once every 30 runs. Restarting the build brings back a green status, while the cause of the failure remains unknown. Using Java, Spring Boot and JUnit 5, the article examines how random test execution order and shared database state can lead to such failures. It also looks at how to find the real cause before trying to fix it.

Интеграционный тест стабильно проходит локально, но в CI падает примерно раз в 30 прогонов. Перезапуск сборки возвращает зелёный статус, а причина сбоя остаётся неизвестной. На примере Java, Spring Boot и JUnit 5 разберём, как случайный порядок запуска тестов и общее состояние базы данных приводят к таким падениям и как найти настоящую причину, прежде чем пытаться её исправить. Разобрать падение

Read full article → Compare