Обычно после падения тестового job следующий job со стандартным when: on_success пропускается, а обычные artifacts могут не загрузиться. Нужно отдельно обеспечить сохранение XML и запуск публикации.
Предпочтительны локаторы по роли, доступному имени и label, а при необходимости — согласованный test ID. getByLabel сохранит работу после смены ID, если связь метки с полем остаётся корректной.
Между выражениями пропущен логический оператор. Для одновременной проверки используйте `{% if enabled and providerPriceListSchedule %}` и закрывающий endif.
В GitLab CI задайте artifacts:when: always и путь к уже созданному HTML-отчёту. Не скрывайте код ошибки тестов через || true ради публикации артефакта.
Браузер разбирает HTML, строит DOM, загружает связанные ресурсы и формирует отображение вместе с CSS. Скрипты могут изменить документ, выполнить новые запросы и повлиять на момент рендера.
Постройте потоковый конвейер с адаптером источника, ограниченной очередью, пулом загрузчиков, парсерами и пакетной записью. Лимит 1000 должен действовать на все активные запросы вместе.
В дочернем шаблоне используйте extends и переопределите блок заголовка. Названия блоков должны совпадать с base.html; если их там нет, сначала добавьте соответствующие точки расширения.
Рекурсивно формируйте ul/li, экранируя подписи и атрибуты. Пункты без url выводите как текст, а для ссылок разрешайте только явно допустимые протоколы.
Сгенерированные HTML и JavaScript считайте недоверенными. Статическую разметку очищают allowlist-санитайзером, а исполняемый код изолируют от основного приложения.
HTML можно передать через iframe.srcdoc, а события — через postMessage. Недоверенный документ должен оставаться изолированным от родительской страницы.