Skip to content

Загрузка результатов тестов из AWS CodePipeline

Для загрузки результатов тестов из AWS CodePipeline вам нужно использовать allurectl.

Введение

Цель этой главы — объяснить, как AWS CodePipeline может быть интегрирован с рабочими процессами ТестОпс.

Эта глава не будет охватывать особенности AWS CodePipeline и подробное описание конфигурации AWS CodePipeline, так как мы считаем, что команда AWS создала качественную документацию по своему продукту.

Создание пайплайна

  1. В инструментах разработчика Code Pipeline откройте Code Pipelines, а затем раздел Pipelines.

  2. Нажмите Create pipeline.

    Кнопка создания пайплайна находится вверху.

  3. Назначьте новую или существующую сервисную роль.

    Экран позволяет выбрать новую или существующую роль.

  4. Добавьте репозиторий с кодом в ваш пайплайн.

    В пайплайн может быть добавлен репозиторий GitHub.

  5. Добавьте шаг сборки.

  6. Создайте новый или выберите существующий проект CodeBuild (в нашем примере мы создадим новый проект).

    На экране доступна кнопка для создания нового проекта CodeBuild.

    Когда вы создаете новый проект, появится новая форма. В этом окне вам нужно настроить ваш новый проект:

    1. Добавьте имя для вашего проекта (оно должно отличаться от названия пайплайна).
    2. Выберите образ контейнера (ОС, версия с набором библиотек).
    3. Назначьте сервисную роль. Вы можете использовать существующую роль для CodeBuild (не путать с CodePipeline) или создать новую, как в примере.
    4. Добавьте другие параметры, специфичные для вашей сборки, такие как таймауты, ресурсы, сертификаты и т. д.
  7. Добавьте переменные окружения, необходимые для загрузки результатов тестов с помощью allurectl:

    • ALLURE_ENDPOINT — FQDN или IP-адрес вашего инстанса ТестОпс;
    • ALLURE_TOKEN — персональный API-токен, сгенерированный в меню пользователя;
    • ALLURE_PROJECT_ID — ID проекта на стороне ТестОпс, в который будут отправлены результаты тестов.

    В окне можно указать переменные окружения.

О токене API

Токен API

Токен API будет использоваться allurectl, работающим в пайплайне, для аутентификации/авторизации вашего пайплайна для загрузки результатов тестов на инстанс ТестОпс.

  1. Войдите в ТестОпс с учетной записью, которую вы собираетесь использовать для загрузки результатов тестов.

  2. Нажмите на ваш аватар и перейдите в API-токены.

  3. Нажмите + Токен.

  4. Придумайте название для токена (например, «Токен для AWS») и нажмите Создать.

    ТестОпс сгенерирует токен и отобразит его в модальном окне.

  5. Нажмите иконку Копировать, чтобы скопировать токен в буфер обмена. Cохраните токен в безопасном месте, так как его нельзя будет восстановить средствами ТестОпс.

Спецификация YAML

Далее вам нужно указать путь к YAML-спецификации AWS.

  • Расположение по умолчанию: /buildspec.yml
  • Вы можете указать другое расположение, если YAML не хранится в корне вашего репозитория.

Указывать другое имя файла buildspec необязательно.

Затем нажмите на CodeBuild, окно закроется, и вы вернетесь на страницу создания пайплайна.

Выберите, какой тип сборки вам нужен. Убедитесь, что все на месте, и нажмите Next.

Можно выбрать одиночную сборку или пакетную.

В зависимости от вашего процесса вы можете либо пропустить создание этапа развертывания, либо настроить его, если требуется развертывание. Это выходит за рамки интеграции с ТестОпс.

Настройка сервисной роли для CodeBuild

С главной страницы откройте раздел IAM и перейдите на вкладку Roles.

Найдите сервисную роль, которую вы используете в CodeBuild, и выберите ее для редактирования.

Политики перечислены в таблице.

Добавьте три роли:

  • codebuild:BatchGetBuilds,
  • codebuild:BatchGetBuildBatches,
  • codepipeline:GetPipelineState.

Роли указаны в коде JSON.

Затем укажите, для каких ресурсов применяются эти правила:

  • все проекты для codebuild;
  • все проекты для codepipeline.

В зависимости от ваших политик безопасности настройки могут быть более детализированными.

Ресурсы указаны в коде JSON.

Запуск вашего пайплайна и отправка результатов тестов в ТестОпс

allurectl

Используйте allurectl, чтобы загрузить результаты тестов в ТестОпс.

Добавьте allurectl в пайплайн или загрузите его туда на одном из этапов выполнения пайплайна.

Logo © 2025 Все права защищены. Сайт принадлежит компании ООО «Инструменты тестирования»