Настройка вебхука в TeamCity и Python (на примере Pytest)

Важно

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

Вы можете запускать автотесты TeamCity и Python со страницы тест-плана Test IT. Для этого требуется настроить вебхук.

Рабочая среда:

  • Сервер TeamCity: http://192.168.88.132:8111/
  • Репозиторий GitHub: Support-Agent/main

Настройка среды TeamCity

Чтобы настроить TeamCity:

  1. В TeamCity создайте тестовый проект (например, TestitCheck).
  2. Подготовьте сборку проекта.
  3. Откройте настройки пользователя и в разделе Access Tokens создайте токен для авторизации вебхуков.
  4. Перейдите в раздел Administration > Diagnostics > Internal Properties и добавьте настройку teamcity.csrf.paranoid=false.
  5. Перейдите в раздел Version Control Settings и укажите ссылку на Git.
  6. Перейдите в раздел Parameters и создайте параметр для вебхука:
  7. Перейдите в раздел BuildStep, в поле Run создайте шаг test типа Custom Script. Значение переменной tmsTestRunID должно совпадать со значением в вебхуке.

Настройка вебхука в Test IT

Чтобы настроить вебхук в Test IT:

  1. Откройте или создайте проект.
  2. Создайте тест-план с ручными тестами и свяжите их с автотестами из репозитория (возможный способ — запуск из ide). Все данные тестов должны совпадать.
  3. Перейдите в раздел Вебхуки в секции Настройки, расположенной в навигационной панели слева.
  4. Настройте следующие параметры вебхука:
    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"}]}}!

Запуск проверочных автотестов

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

  1. Перейдите на страницу тест-плана.
  2. Запустите один из автотестов. При успешной загрузке теста в TeamCity отобразится id тест-рана (прогона) в параметрах, полученных из Test IT:
    Экран логов (пример):
  3. Запустите все тесты, входящие в тест-план. При успешной загрузке всех тестов в систему в параметрах TeamCity отобразится другой id для тест-рана.

    Экран логов (пример):