Настройка интеграции с GitFlic с помощью вебхуков

Узнайте об интеграциях и настройках Test IT

Информация обо всех интеграциях и настройках Test IT доступна на странице Приложения в верхней навигационной панели.

GitFlicopen in new window — это сервис для хранения исходного кода и работы с ним, основанный на системе контроля версий Git. Вы можете настроить интеграцию с GitFlic для работы с автотестами, расположенными в его репозитории, из интерфейса Test IT.

Для настройки интеграции вам нужно:

Чтобы узнать больше о работе с GitFlic API, смотрите дополнительные ресурсы.

Настройка репозитория GitFlic

Подготовка

  1. Создайте файл requirements.txt, в котором должны быть перечислены следующие пакеты для установки:
    pytest       
    testit-pytest
    
  2. Поместите в репозиторий GitFlic автотесты с декораторами externalID и workitemID. Данные декораторы должны совпадать с External ID автотестов и Global ID рабочих элементов в системе Test IT.
  3. Создайте файл connection_config.ini, в котором необходимо задать переменные окружения.
    [testit]       
    url={URL}
    privatetoken={PRIVATE_TOKEN}
    testrunId={TEST_RUN_ID}
    projectId={TMS_PROJECT_ID}
    configurationId={TMS_CONFIGURATION_ID}
    

Создание конвейера (пайплайна)

  1. Создайте файл gitflic-ci.yaml и поместите в корневую папку вашего проекта.
    • Пример файла gitflic-ci.yaml:

      stages:        
        - test
      
      run_tests:      
        image: python:3.9
        stage: test
        
        before_script:
            --pip install -r requirements.txt
        script:
          - pytest --testit
      
    • Пример gitflic-ci.yaml файла без connection_config.ini. В данном случае необходимо инициировать использование переменных окружения через параметры командной строки.

      stages:        
        - test
      
      run_tests:      
        image: python:3.9
        stage: test
        
        before_script:
            --pip install -r requirements.txt
        script:
          - pytest --testit --testrunid=${TEST_RUN_ID} --testit_url=${URL} --privatetoken=${PRIVATE_TOKEN}
      
  2. Выполните коммит изменений.
  3. Войдите в репозиторий GitFlic и в верхнем навигационном меню выберите CI/CD.
  4. Нажмите Запустить конвейер.
    Интеграции Test IT TMS: запуск конвейера в GitFlic
    При успешном создании конвейера он отобразится в списке. Интеграции Test IT TMS: конвейер в GitFlic

Получение токена доступа в GitFlic

Для настройки интеграции вам потребуется токен доступа accessToken, получаемый через API GitFlic.

  1. Следуйте инструкции в официальной документации GitFlicopen in new window.
    • Пример токена доступа:
        {
          "accessToken": "868f3765-aaaa-aaaa-aaaa-13faw8a3ca68",
          "refreshToken": "cb4917e7-aaaa-aaaa-aaaa-9bb604b42e0c",
          "expires": "2023-01-12T15:45:01.961001"
        }
      
  2. Скопируйте значение accessToken из полученного объекта .json.

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

  1. Откройте проект.
  2. В навигационном меню слева откройте секцию Настройки и выберите Вебхуки.
  3. Нажмите Создать.
  4. В Шаге 1 укажите название нового вебхука и выберите тип события — Запуск автотестов.
  5. В Шаге 2 убедитесь, что тип передаваемого запроса выставлен как POST, в поле URL вставьте строку:
    • Для версии Self-hosted: http://{example.gitflic.ru}:8080/rest-api/project/{USERALIAS}/{PROJECTALIAS}/cicd/pipeline/start
    • Для версии Cloud: http://{example.gitflic.ru}:8080/rest-api/project/{USERALIAS}/{PROJECTALIAS}/cicd/pipeline/start, где
      • {example.gitflic.ru} — адрес вашего GitFlic
      • {USERALIAS} — ваш user alias (скопируйте из адресной строки проекта)
      • {PROJECTALIAS} — ваш project alias (скопируйте из адресной строки проекта) URL GitFlic для настройки вебхука в Test IT TMS
  6. В Шаге 3 нажмите Далее.
  7. В Шаге 4 Заголовки HTTP укажите следующие данные:
    • В поле Параметр введите Authorization
    • В поле Значение введите token {accessToken}, где {accessToken} — ваш токен доступа GitFlic, например: token 868f3765-aaaa-aaaa-aaaa-13faw8a3ca68
  8. В Шаге 5 в поле Тип контекста выберите Не отправлять контекст.
  9. Нажмите Сохранить.

При запуске автотестов из Test IT в GitFlic будет запускаться конвейер. Результаты запуска возвращаются в систему Test IT.

Дополнительные ресурсы

Обновлено: