# Самовосстанавливающиеся тестовые пайплайны SUMMARY: Создавайте тестовые пайплайны, которые учатся на сбоях и адаптируются автоматически, используя память Synapse. Самовосстанавливающиеся тестовые пайплайны Традиционные наборы тестов ломаются при изменении UI. Самовосстанавливающиеся тесты используют память Synapse, чтобы учиться на прошлых сбоях и адаптироваться — снижая количество «флакающих» тестов и нагрузку на поддержку. Концепция [CODE BLOCK] 1. Тест запускается 2. При сбое сохраняется информация (что сломалось, почему, как исправить) 3. При следующем запуске: отзыв релевантных сбоев перед выполнением 4. Автоматическое применение известных исправлений Реализация Шаг 1: обёртка теста Оберните каждый тест отзыва/сохранением памяти: [CODE BLOCK] Шаг 2: адаптивная логика теста Внутри теста проверяйте известные сбои и применяйте исправления: [CODE BLOCK] Шаг 3: стратегии восстановления Сохраняйте стратегии восстановления как воспоминания: [CODE BLOCK] Шаг 4: интеграция с CI [CODE BLOCK] Шаг 5: панель анализа сбоев [CODE BLOCK] Лучшие практики > [!TIP] > - Сохраняйте tracebacks — они содержат точную строку сбоя > - Тегируйте по имени теста — обеспечивает быструю фильтрацию > - Используйте категорию — отделяет от обычных воспоминаний > - Устанавливайте приоритет — сбои нельзя забывать > - Периодическая очистка — удаляйте воспоминания о решённых проблемах > - Не храните чувствительные данные — учётные данные, PII Частые паттерны сбоев для сохранения | Тип сбоя | Что сохранять | |--------------|---------------| | Элемент не найден | Испробованный селектор, состояние страницы, снимок экрана | | Тайм-аут | Время ожидания, чего ждали | | Утверждение не выполнено | Ожидаемое и фактическое значение | | Сетевая ошибка | URL, код состояния, тело ответа | | Доступ запрещён | Требуемое разрешение, текущая роль пользователя | Следующие шаги - Автоматизированное тестирование iOS - Лучшие практики работы с памятью - Cookbook восстановления после ошибок