Очистка данных
Каждый запуск генерирует значительное количество данных, например:
- сценарии теста;
- вложения фикстур (общие блоки для тестов, такие как
SetUpиTearDown); - вложения.
Как правило, артефакты успешных тестов не несут полезной информации для анализа, а диагностическая ценность неуспешных результатов тестов со временем снижается. Чтобы эти данные не занимали место в хранилище, настройте правила очистки — система будет удалять артефакты по расписанию.
Правила очистки данных
В ТестОпс есть два типа правил очистки данных:
- глобальное правило очистки — задает базовые сроки хранения артефактов во всех проектах инстанса ТестОпс;
- проектное правило очистки — задает сроки хранения для конкретного проекта и дополняет глобальные правила, не заменяя их.
Новые инстансы ТестОпс без проектов содержат предустановленный набор глобальных правил очистки. Мы рекомендуем также задавать правила очистки для каждого проекта, указывая сроки хранения для всех типов артефактов и каждого статуса результата теста. Если вы не настроете правила очистки на уровне проекта, к нему будут применяться глобальные правила очистки.
Глобальные правила очистки рекомендуется задавать с более длительным сроком (например, месяц), проектные — с более коротким. Приблизительные сроки для проектных правил очистки см. в Рекомендуемые сроки хранения артефактов на уровне проекта.
Важно
Правила очистки работают только для закрытых запусков. В частности, если у вас настроена политика автоматического закрытия запусков, артефакты будут удаляться только после закрытия этих запусков. Например, если вы настроили очистку артефактов через 24 часа, а запуск закрывается автоматически через 72 часа после создания, артефакты удалятся спустя 72 часа, когда запуск будет закрыт.
Принцип работы очистки данных
Очистка проходит в два этапа:
ТестОпс ищет все файлы, которые соответствуют правилам очистки, затем:
- удаляет все записи, связанные с устаревшими файлами, из базы данных;
- формирует список идентификаторов устаревших файлов.
Отдельный фоновый процесс каждые 5 минут запускает цикл удаления из хранилища всех файлов, попавших в список:
в рамках цикла удаления планировщик отправляет запросы на удаление заданного количества файлов, пока очередь не опустеет.
Совет
Максимальное число файлов в одном запросе к хранилищу зависит от конфигурации инстанса ТестОпс. 1 000 файлов — значение по умолчанию для большинства конфигураций.
после ответа хранилища планировщик считает задачу обработанной и идентификатор удаляется из списка независимо от того, удален файл или вернулась ошибка.
Эти процессы создают высокую нагрузку на базу данных и хранилище, поэтому ТестОпс запускает очистку данных ночью по часовому поясу инстанса: для глобальных правил — в 02:00, для проектных правил — в 02:30. Чтобы запустить очистку вне расписания, см. Ручной запуск очистки.
Примечание
В некоторых случаях файлы из одного результата теста могут попадать под разные правила очистки и удаляться в разное время. Подробнее см. Артефакты удаляются не по правилу очистки данных.

