Настройка вебхука в TeamCity и Python (на примере Pytest)
Процесс настройки может различаться
Процесс настройки вебхука может различаться в зависимости от репозитория и фреймворка. При этом основные шаги процесса сохраняются. В данной инструкции рассмотрен один из вариантов настройки.
Вы можете запускать автотесты TeamCity и Python со страницы тест-плана Test IT. Для этого требуется настроить вебхук.
Рабочая среда:
- Сервер TeamCity: http://192.168.88.132:8111/
- Репозиторий GitHub:
Support-Agent/main
Настройка среды TeamCity
Чтобы настроить TeamCity:
- В TeamCity создайте тестовый проект (например TestITCheck).
- Подготовьте сборку проекта.
- Откройте настройки пользователя и в разделе Access Tokens создайте токен для авторизации вебхуков.
- Перейдите в раздел Administration > Diagnostics > Internal Properties и добавьте настройку
teamcity.csrf.paranoid=false
. - Перейдите в раздел Version Control Settings и укажите ссылку на Git.
- Перейдите в раздел Parameters и создайте параметр для вебхука:
- Перейдите в раздел BuildStep, в поле Run создайте шаг test типа Custom Script. Значение переменной
tmsTestRunID
должно совпадать со значением в вебхуке.
Настройка вебхука в Test IT
Чтобы настроить вебхук в Test IT:
- Откройте или создайте проект.
- Создайте тест-план с ручными тестами и свяжите их с автотестами из репозитория (возможный способ — запуск из ide). Все данные тестов должны совпадать.
- Перейдите в раздел Вебхуки в секции Настройки, расположенной в навигационной панели слева.
- Настройте следующие параметры вебхука:
a. Общее: Запуск автотестов
b. URL: http://192.168.88.132:8111/app/rest/buildQueue, тип запросаPOST
c. В Шаге 3 Параметры оставьте поля пустыми, в Шаге 4 используйте заголовки Content-Type и Authorization.
d. В поле Пользовательский контекст введите информацию о контексте и выберите Заменить системные параметры.
Пример пользовательского контекста:{"buildType":{"id":"TestitCheck_Build", "projectId":"TestitCheck"},"properties":{"property":[{"name":"tmsTestRunId","value":"$TEST_RUN_ID"}]}}
!
Запуск проверочных автотестов
Чтобы убедиться в правильной работе вебхука, запустите проверочные автотесты.
- Перейдите на страницу тест-плана.
- Запустите один из автотестов. При успешной загрузке теста в TeamCity отобразится id тест-рана (прогона) в параметрах, полученных из Test IT:
Экран логов (пример): - Запустите все тесты, входящие в тест-план. При успешной загрузке всех тестов в систему в параметрах TeamCity отобразится другой id для тест-рана.
Экран логов (пример):