Интеграция с Bamboo
Примечание
Чтобы настроить или удалить интеграцию в ТестОпс, вы должны иметь доступ к разделам:
- Администрирование — необходимы права администратора инстанса;
- Настройки в конкретном проекте — необходима роль владельца этого проекта.
Интеграция с Bamboo позволяет настроить следующие связи:
- Одна джоба ТестОпс будет соответствовать одному плану Bamboo.
- Один запуск джобы ТестОпс будет соответствовать одной сборке Bamboo (набору джоб в Bamboo).
Новая сборка Bamboo может быть запущена как на стороне ТестОпс, так и Bamboo. В обоих случаях статус запуска синхронизируется и отображается сразу в обеих системах.
Для интеграции ТестОпс с Bamboo используется плагин, который во время запуска тестов:
- Регулярно сканирует новые файлы в директории результатов тестов (например, build/allure-results, см. How it works в документации Allure Report).
- Делает паузу перед загрузкой нового файла, чтобы исключить передачу неполных данных.
- Загружает готовый файл на инстанс ТестОпс.
Это обеспечивает быструю передачу результатов тестов в ТестОпс и отображение промежуточных данных запуска до завершения джобы.
Настройка интеграции
Чтобы настроить интеграцию с Bamboo:
Настройте связь от ТестОпс к Bamboo:
На уровне инстанса ТестОпс добавьте интеграцию с Bamboo, указав:
- название интеграции;
- URL-адрес Bamboo.
На уровне инстанса или проекта ТестОпс включите добавленную интеграцию для проекта, указав учетные данные из Bamboo.
Настройте связь от Bamboo к ТестОпс:
Создайте API-токен в ТестОпс.
Установите плагин Allure TestOps в Bamboo, указав созданный API-токен из ТестОпс.
Примечание
Для интеграции с Bamboo используется плагин Allure TestOps, который совместим с ТестОпс.
Измените настройки плана в Bamboo.
Укажите директорию с результатами тестов в Bamboo.
Добавьте новую джобу в ТестОпс.
Включите поддержку тест-планов в джобе Bamboo.
Параметризируйте джобы в Bamboo и ТестОпс (если необходимо).
Важно
Плагин для Bamboo не поддерживает инстансы ТестОпс с самоподписанными сертификатами.
Перед настройкой интеграции убедитесь, что вы используете правильно подписанный сертификат или рассмотрите возможность сделать ТестОпс доступным для вашего инстанса Bamboo через нешифрованный HTTP.
1. Настройте связь от ТестОпс к Bamboo
1.1. Добавьте интеграцию с Bamboo в ТестОпс
Перейдите в ваш инстанс ТестОпс.
Перейдите в раздел Администрирование → Интеграции.
Нажмите + Добавить интеграцию в правом верхнем углу.
В списке доступных интеграций выберите Bamboo CI Server.
Заполните поля:
- Название — название, которое поможет вам распознать интеграцию, например, Bamboo production.
- Endpoint — URL-адрес инстанса Bamboo, например, https://bamboo.example.com/.
Если ваш инстанс Bamboo использует самоподписанный SSL-сертификат, поставьте галочку напротив Отключить проверку сертификата.
Нажмите Добавить интеграцию.
1.2. Включите интеграцию для проекта ТестОпс
Чтобы включить интеграцию в нужном проекте ТестОпс, воспользуйтесь одним из способов:
- Перейдите в раздел Администрирование → Интеграции.
- В списке настроенных интеграций найдите и откройте вашу интеграцию с Bamboo.
- Перейдите на вкладку Проекты.
- Справа от поля поиска нажмите
+. - В выпадающем списке Проект выберите нужный проект ТестОпс.
- В появившемся окне введите Имя пользователя и Пароль учетной записи Bamboo.
- Нажмите Проверить соединение. Если учетные данные верны, через несколько секунд появится сообщение «Соединение установлено».
- Нажмите Добавить интеграцию.
2. Настройте связь от Bamboo к ТестОпс
Выполните шаги ниже, чтобы настроить вторую часть двусторонней связи: отправку статусов и результатов тестов из Bamboo в ТестОпс.
2.1. Создайте токен в ТестОпс
В ТестОпс нажмите на ваш аватар и перейдите в раздел API-токены.
Нажмите + Токен.
Введите название токена, которое поможет вам распознать интеграцию, например, Токен для Bamboo.
Нажмите Создать.
ТестОпс сгенерирует токен и отобразит его в модальном окне.
Нажмите иконку Копировать, чтобы скопировать токен в буфер обмена.
Cохраните токен в безопасном месте, он понадобится для настройки интеграции в Bamboo.
2.2 Установите плагин для Bamboo
В Bamboo нажмите иконку шестеренки в правом верхнем углу и выберите Manage apps.
Нажмите Find new apps.
Используя поле поиска, найдите плагин Allure TestOps for Bamboo.
Нажмите Install рядом с плагином.
В появившемся окне нажмите Install, затем Accept & install.
Подождите, пока плагин загрузится и установится.
2.3. Измените настройки плана в Bamboo
В панели управления Bamboo перейдите к вашему плану сборки.
Нажмите Actions → Configure plan.
Перейдите на вкладку Other.
В разделе Allure Upload заполните поля:
- Enable Allure Upload— должно быть отмечено.
- Server endpoint URL — URL-адрес инстанса ТестОпс, например, https://testops.example.com.
- Server token — API-токен, который вы сохранили на шаге 2.1.
- Project ID — название проекта ТестОпс.
- Launch name — шаблон для именования запусков тестов. В этом поле можно использовать переменные Bamboo.
- Launch tags — список тегов, которые должны быть присвоены запуску тестов (через запятую).
Нажмите Save.
2.4. Укажите директорию с результатами тестов в Bamboo
В панели управления Bamboo перейдите к вашему плану сборки.
Нажмите Actions → Configure plan.
Нажмите на джобу, которая запускает тесты.
Перейдите на вкладку Other.
В поле Test Results Directories укажите путь к директории с результатами тестов, например, build/allure-results.
Если в вашем проекте несколько директорий с результатами тестов, вы можете разделить их запятыми или использовать шаблон с подстановочными символами, например, modules/*/build/allure-results.
Нажмите Save.
2.5. Добавьте новую джобу в ТестОпс
Самый простой и надежный способ создать джобу в ТестОпс — выполнить пайплайн Bamboo, загрузить результаты тестов в ТестОпс, а затем закрыть созданный запуск. ТестОпс автоматически создаст джобу для пайплайна Bamboo. Затем вам нужно будет настроить параметры, описанные в шаге 3.
Чтобы создать новую джобу вручную:
Перейдите в ваш проект ТестОпс.
Перейдите в раздел Джобы.
Нажмите + Джоба в правом верхнем углу страницы.
В появившемся окне заполните поля:
- Сервер сборки — название инстанса Bamboo, который вы добавили на шаге 1.1.
- Может выполнять тесты — если отмечено, пользователи смогут запускать эту джобу из интерфейса тест-кейсов.
- Джоба — название проекта Bamboo. Обратите внимание, что вы не можете добавить один и тот же проект Bamboo в ТестОпс дважды.
- Параметры — параметры, которые должны быть переданы в Bamboo через переменные окружения, см. Окружение.
Нажмите Отправить.
2.6. Включите поддержку тест-планов в джобе Bamboo
В панели управления Bamboo перейдите к вашему плану сборки.
Нажмите Actions → Configure plan.
Нажмите на джобу, которая запускает тесты.
В списке джоб выберите ту, которая запускает тесты.
Например, во многих проектах это будет джоба Script с командой, специфичной для фреймворка.
В поле Environment variables введите:
ALLURE_TESTPLAN_PATH=${bamboo.ALLURE_TESTPLAN_PATH}.
Нажмите Save.
3. Параметризируйте джобы
Bamboo использует переменные для передачи параметров в сборки. ТестОпс интегрирует эту функцию с собственной концепцией Окружения, что позволяет вам как задавать параметры для новых джоб, так и видеть параметры, установленные для джоб, запущенных вне ТестОпс.
Обратите внимание, что рекомендуется устанавливать одинаковые значения в ТестОпс и в Bamboo. В таком случае сборка Bamboo получит одно и то же окружение независимо от источника запуска.
Важно
Если ваш план Bamboo настроен на использование нескольких веток, убедитесь, что вы создали переменную окружения Branch в ТестОпс и передали ее в вашу джобу. Это специальное имя укажет Bamboo, какая из веток плана должна быть запущена.
3.1. Добавьте глобальные переменные окружения в ТестОпс
Перейдите в ваш инстанс ТестОпс.
Перейдите в раздел Администрирование → Окружения.
Для каждого параметра, который вы хотите добавить:
- Нажмите + Создать.
- Введите название параметра.
- Нажмите Отправить.

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

3.3. Добавьте параметры в джобу ТестОпс
Перейдите в раздел Джобы.
Напротив джобы, которую вы хотите параметризировать, нажмите
⋯→ Настроить.Для каждого параметра, который вы хотите добавить, в секции Параметры нажмите Добавить и заполните поля:
- Название — название переменной окружения (такое же, как Ключ из шага 3.2).
- Значение — значение по умолчанию, которое должно использоваться, если не указано для конкретного запуска.
- Переменная окружения — переменная окружения из шага 3.1.

Нажмите Отправить.
3.4. Установите значения по умолчанию в Bamboo
В панели управления Bamboo перейдите к вашему плану сборки.
Нажмите Actions → Configure plan.
Перейдите на вкладку Variables.
Для каждого параметра, который вы хотите добавить:
- В поле Variable name укажите название переменной окружения (такое же, как Ключ из шага 3.2).
- В поле Value укажите значение по умолчанию, которое должно использоваться, если не указано для конкретного запуска.
- Нажмите Add.

Удаление интеграции
Вы можете удалить интеграцию с Bamboo двумя способами — на уровне всего инстанса ТестОпс (через раздел Администрирование) или на уровне отдельного проекта (через настройки проекта).
Важно
Последствия удаления интеграции:
Удаление на уровне инстанса — связь с инстансом Bamboo будет удалена из всех джоб ТестОпс, которые относятся к интеграции:
- Иконки для запуска и обновления этих джоб в разделе Джобы станут неактивными.
- Результаты запусков тестов из Bamboo не будут отправляться в инстанс ТестОпс.
Удаление на уровне проекта — связь с инстансом Bamboo будет удалена из джобы ТестОпс, которая относится к интеграции и находится в этом проекте:
- Иконки для запуска и обновления этой джобы в разделе Джобы останутся активными.
- ТестОпс не сможет запустить тесты из проекта на стороне Bamboo. После закрытия запуска результаты этих тестов получат статус Неизвестный.
- Результаты запусков тестов из Bamboo не будут отправляться в проект ТестОпс.
Перейдите в раздел Администрирование → Интеграции.
В списке настроенных интеграций найдите и откройте вашу интеграцию с Bamboo.
Перейдите на вкладку Проекты и убедитесь, что интеграция не используется в проектах ТестОпс.
Если интеграция подключена к проектам, удалите ее из них. Для этого напротив названия каждого проекта нажмите иконку корзины → Удалять.
Перейдите на вкладку Конфигурация.
Нажмите Удалить интеграцию.
Нажмите Удалить.

