Сохраните первый отказ, seed, порядок и сведения о параллельных исполнителях.
Зачем
Зачем это нужно
Для каждой гипотезы задайте эксперимент, который отличает её от остальных.
После исправления повторите опасный порядок и обычный набор тестов.
Вопросы
Частые вопросы
Как задать пример зависимости от порядка?
«Учебный A проверяет дату в UTC, B меняет TZ на другую зону. A отдельно проходит, после B — иногда нет». Попросите последовательность A/B/A и проверку восстановления окружения при исключении. Такой эксперимент полезнее сотни случайных повторов: он связывает отказ с конкретным изменением состояния. В реальном проекте сначала подтвердите, что библиотека действительно читает изменённую настройку в момент выполнения.
Какие причины проверять кроме часового пояса?
Общую базу, имена временных файлов, глобальные моки, неподготовленные фоновые задачи и зависимость от реальной сети. Выберите гипотезы по характеру ошибки. Попросите таблицу «признак — эксперимент — ожидаемое наблюдение». Одновременное отключение параллельности, увеличение таймаутов и смена среды может скрыть проблему, не показав, какое изменение действительно устранило причину нестабильности данного тестового сценария.
Когда retry допустим?
Как временный инструмент наблюдения или согласованная мера, если первая ошибка и количество повторов не теряются. Он не делает поведение детерминированным. Попросите сохранить артефакты первого падения и пометить временное ограничение. Для ошибки настоящего продукта повтор особенно опасен: зелёный итог после нескольких попыток способен скрыть гонку, которая продолжит проявляться у пользователей при обычной работе приложения.
Что считать подтверждением исправления?
Воспроизводимый ранее опасный порядок проходит после целевой правки, а проверки не потеряли смысл. Повторите запуск в нужной параллельности и сопоставимой среде. Отсутствие случайного сбоя в нескольких прогонах — ограниченное свидетельство, не гарантия. Енотик помогает разбирать предоставленные артефакты, но не видит вашу CI-систему автоматически; приложите версии, seed и данные, позволяющие восстановить условия первого отказа.
Рядом
Соседние страницы каталога
Дальше — весь каталог задач: поиск по названию, темы и фильтры.