Как сделать так, чтобы HTML-отчёт публиковался в GitLab CI даже при падении тестов?

В GitLab CI задайте artifacts:when: always и путь к уже созданному HTML-отчёту. Не скрывайте код ошибки тестов через || true ради публикации артефакта.

Короткий ответ

Что ответить на собеседовании

В GitLab CI задайте artifacts:when: always и путь к уже созданному HTML-отчёту. Не скрывайте код ошибки тестов через || true ради публикации артефакта.

Подробный разбор

Ответ с пояснениями

В GitLab CI задайте artifacts:when: always и путь к уже созданному HTML-отчёту. Не скрывайте код ошибки тестов через || true ради публикации артефакта.

Например, при установленном pytest-html:

tests:
  script:
    - pytest --html=report.html --self-contained-html
  artifacts:
    when: always
    paths:
      - report.html

Job останется неуспешным при падении тестов, но отчёт загрузится, если файл создан и runner дошёл до загрузки артефактов. Timeout и авария runner могут помешать этому. Если отчёт собирается отдельной командой, её выполнение тоже нужно обеспечить после тестов, например через after_script. См. GitLab CI YAML.

Источник: docs.gitlab.com.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее