
Test IT поддерживает интеграцию с Bitbucket. Для настройки используется все несколько строк кода и поддерживаются любые тестовые фреймворки и платформы.
Вы можете интегрировать как простые проекты (только с запуском тестов), так и сложные проекты (несколько отдельных проектов), которые запускаются в несколько независимых потоков.
Независимо от ваших требований процесс интеграции всегда будет одинаков:
- Запуск автоматизированных тестов в пайплайнах Bitbucket.
- Генерация Junit XML отчета с результатами автоматизированных тестов.
- Загрузка результатов с помощью Test IT CLI
Не забывайте передавать приватный токен через переменную окружения
TMS_TOKEN
для корректной работы утилиты Test IT CLI. Как это сделать безопасно смотрите ниже.
Стандартный запуск
В данном разделе показано как запускать простые проекты в Bitbucket. В качестве примера мы выбрали тестовый фреймворк Pytest для Python. Но данная инструкция будет актуальна для любых тестовых фреймворков и платформ.
Мы будем использовать утилиту Test IT CLI
для быстрой и простой интеграции с нашей системой управления тестированием. С помощью одной команды мы загрузим все результаты автоматизированных тестов.
Ниже представлен пример файла bitbucket-pipelines
, который отвечает за работу пайплайнов в Bitbucket:
# bitbucket-pipelines.yml
image: python:3.8
pipelines:
default:
- step:
name: Run tests and generate report
script:
# Install project dependencies
- pip install -r requirements.txt
# Execute test and generate report
- pytest --junitxml=results/test-results.xml src/tests.py
after-script:
# Install Test IT CLI
- pip install testit-cli
# Submit test results to TMS
- testit
--url <YOUR_INSTANCE_URL>
--project-id 5236eb3f-7c05-46f9-a609-dc0278896464
--configuration-id 15dbb164-c1aa-4cbf-830c-8c01ae14f4fb
--testrun-name "Bitbucket test run"
--results results/test-results.xml
Простым добавлением необходимых шагов вы можете запускать множество необходимых вам тестов и загружать их в Test IT. Больше информации вы можете найти в официальной документации.
Параллельный запуск
Мы так же полностью поддерживаем параллельный запуск автоматизированных тестов в Bitbucket. Добавляются дополнительные независимые шаги для создания, завершения тестрана и запуска тестов.
Ниже представлен пример файла bitbucket-pipelines.yml
, который отвечает за работу пайплайнов в Bitbucket:
# bitbucket-pipelines.yml
image: python:3.8
pipelines:
default:
- step:
name: Create testrun
script:
# Install Test IT CLI
- pip install testit-cli
# Create testrun
- testit
--mode create
--url <YOUR_INSTANCE_URL>
--project-id 5236eb3f-7c05-46f9-a609-dc0278896464
--testrun-name "Bitbucket test run"
--output output.txt
# Export TMS_TEST_RUN_ID env variable
- echo "export TMS_TEST_RUN_ID=$(cat output.txt)" >> tms_env.sh
artifacts:
- tms_env.sh
- parallel:
- step:
name: Test group 1
script:
# Install project dependencies
- pip install -r requirements.txt
# Execute test and generate report
- pytest --junitxml=results/test-results.xml src/tests.py
after-script:
# Use the artifact from the previous step
- cat tms_env.sh
- source tms_env.sh
# Install Test IT CLI
- pip install testit-cli
# Submit test results to TMS
- testit
--mode upload
--url <YOUR_INSTANCE_URL>
--configuration-id 15dbb164-c1aa-4cbf-830c-8c01ae14f4fb
--testrun-name "Bitbucket test run"
--results results/test-results.xml
- step:
name: Test group 2
script:
# Install project dependencies
- pip install -r requirements.txt
# Execute test and generate report
- pytest --junitxml=results/test-results.xml src/tests.py
after-script:
# Use the artifact from the previous step
- cat tms_env.sh
- source tms_env.sh
# Install Test IT CLI
- pip install testit-cli
# Submit test results to TMS
- testit
--mode upload
--url <YOUR_INSTANCE_URL>
--configuration-id 15dbb164-c1aa-4cbf-830c-8c01ae14f4fb
--testrun-name "Bitbucket test run"
--results results/test-results.xml
- step:
name: Complete
script:
# Use the artifact from the previous step
- cat tms_env.sh
- source tms_env.sh
# Install Test IT CLI
- pip install testit-cli
# Complete testrun
- testit
--mode finish
--url <YOUR_INSTANCE_URL>
Безопасное хранение данных
Для работы утилиты Test IT CLI вам необходимо использовать приватный токен для авторизации. Хранение данного токена и другой чувствительной информации в коде строго не рекомендуется, так как доступ к этой информации будет иметь любой у кого есть доступ к коду.
Используйте переменные и секреты Bitbucket для хранения чувствительной информации. Подробнее с секретами вы можете ознакомится в официальной документации.