Skip to content
Main Navigation
Автоматизированное тестирование
Интеграции
Ручное тестирование
Дашборды и аналитика
Ресурсы
Документация
Блог
События
Последнее из блога
Управление дефектами
Управление дефектами
Разбираем понятия дефекта, ошибки и отказа, чтобы эффективно описывать их в баг-репортах, учитывать в тестировании и улучшить работу команды и баг-трекера.
Тестирование производительности
Тестирование производительности
Изучаем методы и средства для оценки быстродействия системы, а также определяем, когда и как лучше всего проводить тестирование: с помощью нагрузочного или стрессового подхода.
Настройка вебхуков в ТестОпс для Slack
Настройка вебхуков в ТестОпс для Slack
Гайд по настройке вебхуков в ТестОпс на примере создания сообщений для канала в Slack.
Перейти в блог
ТарифыПартнерыСвязаться с нами
Sidebar Navigation

Описание ТестОпс

О продукте

Информация о релизах

Миграция с других решений

Термины и определения

Часто задаваемые вопросы

Установка ТестОпс

Архитектура

Установка и первый запуск

Обзор

Kubernetes

Docker Compose

DEB-пакеты

RPM-пакеты

База данных

S3-хранилище

Конфигурация

Обзор

Сеть

Аутентификация

Обзор

Локальная аутентификация

LDAP

OpenID и Azure AD

OpenID и Keycloak

SAML 2.0

Настройка SMTP

Резервное копирование и восстановление

Начало работы

1. Создайте проект

2. Запустите ручной тест

3. Запустите автотест

4. Создайте комбинированный запуск

5. Обработайте результаты тестов

Обзор ТестОпс

Обзор

Дашборды

Тест-кейсы

Общие шаги

Тест-планы

Запуски

Результаты тестов

Дефекты

Джобы

Меню пользователя

Тест-кейсы

Статусы воркфлоу

Сценарий ручного теста

Параметры ручного теста

Вложения

Теги

Тестовые слои

Ссылки

Задачи из таск-трекеров

Сторонние тест-кейсы

Участники

Связанные тест-кейсы

Кастомные поля

Ключи маппинга

Импорт

Запуски

Окружение

Обновление метаданных

Сравнение запусков

Категории ошибок

Проект

Обзор

Управление доступом

Деревья

Вебхуки

Администрирование

Обзор

Участники

Группы

Очистка данных

Журналы аудита пользователей

Интеграции

Обзор

CI-серверы

AWS CodePipeline

Azure DevOps

Bamboo

Bitbucket

CircleCI

GitHub

GitLab

Jenkins

TeamCity

TeamCity (allurectl)

Таск-трекеры

GitHub

GitLab

Jira Data Center

Jira Software Cloud

Kaiten

Redmine

Wrike

Yandex Tracker

YouTrack

Системы управления тестированием

TestRail

Xray

Zephyr Scale

Экосистема ТестОпс

allurectl

AQL

API

Устранение неполадок

SaaS

ТестОпс как SaaS

Миграция в облако ТестОпс

On this page

Интеграция с CircleCI ​

Эта страница описывает, как настроить интеграцию ТестОпс с CircleCI в проекте, который использует CircleCI для запуска тестов.

Как и все другие интеграции CI для ТестОпс, это включает двустороннюю связь:

  • Джоба в пайплайне CircleCI использует allurectl, чтобы отправить свой статус и результаты тестов в ТестОпс.
  • ТестОпс использует API CircleCI для запуска новых пайплайнов, при необходимости передавая тест-план.

После остановки пайплайна соответствующий запуск в ТестОпс может быть закрыт вручную или автоматически в соответствии с настройками автоматического закрытия.

Чтобы добавить поддержку ТестОпс в ваш пайплайн CircleCI:

  1. Включите отправку данных из CircleCI.
  2. Включите запуск пайплайна CircleCI.
  3. Параметризуйте джобы (если необходимо).

1. Включите отправку данных из CircleCI ​

Чтобы CircleCI отправлял статусы пайплайнов и результаты тестов в ТестОпс, вам нужно создать токен аутентификации в ТестОпс, добавить токен в CircleCI и изменить саму джобу.

Затем запустите и проверьте пайплайн, чтобы убедиться, что все работает.

1.1. Создайте токен в ТестОпс ​

  1. В ТестОпс нажмите на ваш аватар и перейдите в API-токены.

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

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

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

  4. Нажмите значок Копировать, чтобы скопировать токен в буфер обмена. Этот токен понадобится вам на следующем шаге.

1.2. Укажите токен в CircleCI ​

  1. В CircleCI откройте страницу проекта и нажмите Project Settings в правом верхнем углу.

  2. В меню слева нажмите Environment Variables.

  3. Нажмите Add Environment Variable.

  4. В появившемся окне заполните поля:

    • Name — ALLURE_TOKEN.
    • Value — API-токен, который вы получили на шаге 1.1.
  5. Нажмите Add Environment Variable, чтобы сохранить настройки.

1.3. Измените джобу ​

Чтобы внести изменения в пайплайн, внесите следующие изменения в файл .circleci/config.yml в вашем репозитории.

  1. Убедитесь, что параметр version имеет значение 2.1.

  2. Добавьте или расширьте блок parameters. Он должен включать два необязательных строковых параметра: ALLURE_JOB_RUN_ID и ALLURE_USERNAME.

  3. Для каждой джобы, которая запускает тесты:

    1. В steps добавьте первый шаг, который загружает инструмент allurectl и делает его исполняемым.

      В приведенном ниже примере мы используем curl для загрузки файла. Если curl не включен в образ Docker, который вы используете для джобы, используйте wget или аналогичный инструмент.

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

    2. Добавьте или расширьте блок environment. Он должен включать следующие переменные:

      • ALLURE_ENDPOINT — URL-адрес сервера ТестОпс.
      • ALLURE_PROJECT_ID — ID проекта ТестОпс.
      • ALLURE_RESULTS — путь к директории с результатами тестов, например, build/allure-results. Если в вашем проекте несколько директорий с результатами тестов, вы можете разделить их запятыми или использовать шаблон с подстановочными символами, например, modules/*/build/allure-results.
      • ALLURE_JOB_RUN_ID — << pipeline.parameters.ALLURE_JOB_RUN_ID >>.
      • ALLURE_USERNAME — << pipeline.parameters.ALLURE_USERNAME >>.
    3. Оберните команду, которая запускает тесты, в команду ./allurectl watch.

Примечание

Пример

Предположим, у нас есть проект на Java с файлом .circleci/config.yml такого вида:

yaml
version: 2.1
workflows:
  test:
    jobs:
      - test
jobs:
  test:
    docker:
      - image: cimg/openjdk:17.0
    working_directory: ~/repo
    steps:
      - checkout
      - run:
          name: Run tests
          command: gradle clean test

С интеграцией ТестОпс файл будет выглядеть примерно так:

yaml
version: 2.1
workflows:
  test:
    jobs:
      - test
parameters:
  ALLURE_JOB_RUN_ID:
    type: string
    default: ""
  ALLURE_USERNAME:
    type: string
    default: ""
jobs:
  test:
    docker:
      - image: cimg/openjdk:17.0
    working_directory: ~/repo
    environment:
      ALLURE_ENDPOINT: https://testops.example.com
      ALLURE_PROJECT_ID: 1
      ALLURE_RESULTS: build/allure-results
      ALLURE_JOB_RUN_ID: << pipeline.parameters.ALLURE_JOB_RUN_ID >>
      ALLURE_USERNAME: << pipeline.parameters.ALLURE_USERNAME >>
    steps:
      - checkout
      - run:
          name: Download allurectl
          command: curl -fsSL https://github.com/allure-framework/allurectl/releases/latest/download/allurectl_linux_amd64 -o allurectl && chmod +x allurectl
      - run:
          name: Run tests
          command: ./allurectl --insecure watch -- gradle clean test

1.4. Запустите и проверьте пайплайн ​

  1. В CircleCI откройте проект и перейдите к пайплайну, запущенному последним коммитом.

  2. Если пайплайн еще не завершен, дождитесь его завершения.

  3. В деталях пайплайна нажмите на шаг, который запускает тесты.

    Ближе к концу его лога должна быть ссылка на отчет о тестировании в ТестОпс. Убедитесь, что она присутствует и работает.

    Ссылка на запуск находится в логах выполнения пайплайна.

  4. В запуске в ТестОпс откройте результаты одного теста.

    Внизу страницы должна быть ссылка на джобу CircleCI. Убедитесь, что она присутствует и работает.

    Ссылка на пайплайн CircleCI находится внизу панели с результатами тестов.

2. Включите запуск пайплайнов CircleCI ​

Интеграция с CircleCI должна быть настроена на двух уровнях.

Сначала администратор должен указать URL-адрес сервера CircleCI.

Затем владелец проекта должен создать токен аутентификации в CircleCI, добавить его в ТестОпс и настроить джобу в ТестОпс.

2.1. Укажите сервер CircleCI в ТестОпс ​

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

  2. Перейдите в раздел Администрирование → Интеграции.

  3. Нажмите + Добавить интеграцию в правом верхнем углу экрана.

  4. В появившемся окне выберите CircleCI.

  5. Заполните поля:

    • Название — название, которое поможет вам распознать сервер CircleCI, например, CircleCI production.
    • Endpoint — URL-адрес сервера CircleCI, например, https://circleci.com/.
  6. Если ваш сервер CircleCI использует самоподписанный SSL-сертификат, поставьте галочку Disable certificate validation.

  7. Нажмите Добавить интеграцию.

2.2. Создайте токен в CircleCI ​

  1. В CircleCI нажмите на ваш аватар в левом нижнем углу.

  2. В меню слева нажмите Personal API Tokens.

  3. Нажмите Create New Token.

  4. В появившемся окне введите название токена в поле Token Name, чтобы помочь вам распознать токен, например, «Токен для ТестОпс».

  5. Нажмите Add API Token.

    Сгенерированный токен появится в окне. Нажмите кнопку Copy, чтобы скопировать его.

    Этот токен понадобится вам на следующем шаге.

2.3. Добавьте токен в проект ТестОпс ​

  1. Откройте ваш проект в ТестОпс.
  2. Перейдите в раздел Настройки → Интеграции.
  3. В разделе Доступные интеграции найдите интеграцию CircleCI и нажмите Добавить интеграцию рядом с ней.
  4. В появившемся окне укажите Токен, который вы получили на шаге 1.2.
  5. Нажмите Проверить соединение. Если токен указан верно, через несколько секунд появится сообщение «Соединение установлено».
  6. Нажмите Добавить интеграцию, чтобы сохранить настройки.

2.4. Настройте джобу в ТестОпс ​

  1. Откройте ваш проект в ТестОпс.

  2. Перейдите в раздел Джобы.

    На странице должна быть новая джоба, автоматически добавленная и настроенная во время запуска на шаге 1.4.

  3. Нажмите ⋯ напротив джобы, затем выберите Настроить.

  4. В появившемся окне отредактируйте поля:

    • Название — название, которое поможет вам распознать джобу.
    • Сервер сборки — название интеграции, которую вы добавили на шаге 2.1.
    • Джоба может быть использована для запуска тестов — если установлено, пользователи смогут запускать эту джобу из ТестОпс.
    • Параметры — параметры, которые должны быть переданы в CircleCI через переменные окружения, см. Окружение.

    Окно позволяет настроить параметры джобы.

  5. Нажмите Отправить.

3. Параметризуйте джобы ​

Пайплайны CircleCI могут принимать параметры, которые передаются командам. ТестОпс интегрирует эту функцию с собственной концепцией Окружения, что позволяет вам как задавать параметры для новых джоб, так и видеть параметры, установленные для джоб, запущенных вне ТестОпс.

В CircleCI владельцу проекта нужно добавить переменные и их значения по умолчанию.

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

Важно

Если в репозитории вашего проекта есть несколько веток, обязательно создайте переменную окружения Branch в ТестОпс и передайте ее в свою джобу. Это специальное имя укажет CircleCI, какую из веток нужно использовать.

3.1. Установите значения по умолчанию в CircleCI ​

Чтобы внести изменения в пайплайн, отредактируйте .circleci/config.yml в вашем репозитории.

  1. В глобальном блоке parameters объявите параметры и их значения по умолчанию.
  2. В блоке environment оберните параметры в переменные окружения, чтобы инструмент allurectl мог получить к ним доступ.

Например:

yaml
version: 2.1
workflows:
  test:
    jobs:
      - test
parameters:
  ALLURE_JOB_RUN_ID:
    type: string
    default: ""
  ALLURE_USERNAME:
    type: string
    default: ""
  PRODUCT_VERSION:
    type: string
    default: "1.23"
  TESTS_BROWSER:
    type: string
    default: chrome
jobs:
  test:
    docker:
      - image: cimg/openjdk:17.0
    working_directory: ~/repo
    environment:
      ALLURE_ENDPOINT: https://testops.example.com
      ALLURE_PROJECT_ID: 1
      ALLURE_RESULTS: build/allure-results
      ALLURE_JOB_RUN_ID: << pipeline.parameters.ALLURE_JOB_RUN_ID >>
      ALLURE_USERNAME: << pipeline.parameters.ALLURE_USERNAME >>
      PRODUCT_VERSION: << pipeline.parameters.PRODUCT_VERSION >>
      TESTS_BROWSER: << pipeline.parameters.TESTS_BROWSER >>
    steps:
      - checkout
      - run:
          name: Download allurectl
          command: curl -fsSL https://github.com/allure-framework/allurectl/releases/latest/download/allurectl_linux_amd64 -o allurectl && chmod +x allurectl
      - run:
          name: Run tests
          command: ./allurectl --insecure watch -- gradle clean test

3.2. Добавьте глобальные названия параметров в ТестОпс ​

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

  2. Перейдите в раздел Администрирование → Окружения.

  3. Для каждого параметра, который вы хотите добавить, нажмите + Создать, введите название параметра и нажмите Отправить.

    Обратите внимание, что это название может быть человекочитаемым и не обязательно должно совпадать с названием из шага 3.1.

    Названия переменных окружения добавляются в разделе Администрирование.

3.3. Сопоставьте параметры с переменными окружения в ТестОпс ​

  1. Откройте ваш проект в ТестОпс.

  2. Перейдите в раздел Настройки → Окружение.

  3. Для каждого параметра, который вы хотите использовать:

    1. Нажмите + Создать, если параметра нет в списке. Если параметр уже существует, нажмите значок Редактировать рядом с его названием.
    2. В поле Ключ укажите название переменной окружения из шага 3.1.
    3. В поле Переменная окружения выберите глобальное название параметра из шага 3.2.
    4. Нажмите Отправить.

    Сопоставление переменных окружения находится в настройках проекта.

3.4. Добавьте параметры в джобу ТестОпс ​

  1. Откройте ваш проект в ТестОпс.

  2. Перейдите в раздел Джобы.

  3. Найдите джобу, которую хотите параметризовать. Нажмите ⋯ и выберите Настроить.

    Появится окно настроек джобы, содержащее раздел Параметры.

  4. Для каждого параметра, который вы хотите использовать, нажмите Добавить и заполните поля:

    • Название — название переменной окружения из шага 3.1.
    • Значение — значение по умолчанию, такое же, как default из шага 3.1.
    • Переменная окружения — глобальное название параметра из шага 3.2.

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

  5. Нажмите Отправить.

Pager
Previous pageBitbucket
Next pageGitHub

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