Интеграция с Jira Software Cloud
Jira Software Cloud — это облачная версия популярного трекера задач Jira. В этой статье описывается, как настроить интеграцию между экземпляром Jira Software Cloud и ТестОпс.
- В запуске ТестОпс, результате теста или дефекте будут кликабельные ссылки на связанные задачи Jira.
- В задаче Jira будут списки связанных запусков или результатов тестов ТестОпс.
- Закрытие задачи Jira приведет к закрытию соответствующего дефекта в ТестОпс.
Списки на стороне Jira встроены в страницу деталей задачи в виде HTML-iframe. Для этого ТестОпс не обязательно должен быть доступен из Jira Software Cloud, но он должен быть доступен с устройства пользователя. Это также означает, что интеграция может быть затронута настройками веб-браузера пользователя, особенно если экземпляр Jira Data Center использует HTTPS. Если ваши пользователи все равно будут сообщать о каких-либо проблемах, пожалуйста, обратитесь к разделу Устранение неполадок или свяжитесь с нашей службой поддержки.
Для добавления задачи в тест-кейс вручную Jira должна быть доступна с сервера ТестОпс.
Для использования автоматической привязки между тест-кейсами и задачами автор теста должен определить связь с помощью адаптера Allure Report для своей тестовой среды. Вот пример такого определения:
import { test } from "@playwright/test";
import { allure } from "allure-playwright";
test("Some test", async ({ page }) => {
allure.label("jira-prod", "BUG-123");
// ...
});
Этот код определяет связь между тестом и задачей “BUG-123” в трекере задач “jira-prod”. Чтобы сделать это фактической ссылкой в веб-интерфейсе, ТестОпс использует сопоставление задач для “jira-prod”, как настроено на шаге 2.4.
Обратите внимание, что хотя приведенный выше пример работает, в реальном проекте мы рекомен дуем определить свою собственную обертку функции вместо указания ключа в allure.label()
каждый раз. Пожалуйста, обратитесь к документации Allure Report для вашей тестовой среды.
1. Установите плагин для Jira
-
В Jira выберите Apps → Explore more apps в верхнем навигационном меню.
-
Используя строку поиска, найдите плагин “Allure TestOps for Jira”.
-
Нажмите Get app рядом с плагином.
-
В появившемся диалоговом окне нажмите Get it now.
Подождите, пока не появится сообщение “Allure TestOps for Jira installed successfully”.
2. Включите ссылки Jira в ТестОпс
После завершения этой части настройки ТестОпс будет поддерживать ссылки на задач и Jira как в запусках тестов, так и в конкретных результатах тестов.
Сначала администратор укажет URL-адрес экземпляра Jira.
Затем владелец любого проекта создаст токен аутентификации в Jira, добавит его в ТестОпс и настроит сопоставление задач.
2.1. Укажите URL-адрес Jira в ТестОпс
-
Войдите в ТестОпс, используя учетную запись администратора.
-
Нажмите на свой аватар и перейдите в Administration → Integrations.
-
Нажмите Add integration в правом верхнем углу страницы.
-
В появившемся диалоговом окне выберите Jira Software Cloud.
-
Заполните поля:
- Name — имя, которое поможет вам распознать интеграцию, на пример, “Jira production”.
- Endpoint — URL-адрес экземпляра Jira, например, “https://example.atlassian.net/”.
-
Нажмите Add integration.
2.2. Создайте токен в Jira
-
В Jira нажмите на свой аватар и перейдите в Manage account.
-
В верхнем навигационном меню перейдите в Security.
-
В разделе API tokens нажмите Create and manage API tokens.
-
Нажмите Create API token.
-
Введите имя, которое поможет вам распознать токен, например, “Token for TestOps”.
-
Нажмите Create, затем нажмите Copy.
Новый токен будет скопирован в ваш буфер обмена.
Вам понадобится этот токен на следующем шаге.
2.3. Добавьте токен в ТестОпс
-
В ТестОпс перейдите на страницу проекта.
-
В меню слева нажмите Settings → Integrations.
-
В разделе Available integrations найдите интеграцию Jira Software Cloud и нажмите Add integration рядом с ней.
-
В появившемся диалоговом окне заполните поля:
- Username — электронная почта, которую вы используете для входа в Jira Software Cloud.
- API token — API токен, который вы получили на шаге 2.2.
СоветПроверьте правильность учетных данных
Нажмите Test connection. Через несколько мгновений должно появиться сообщение “Connection established”.
-
Нажмите Add integration, чтобы закрыть диалоговое окно и сохранить настройки.
2.4. Настр ойте сопоставление задач
-
В ТестОпс перейдите на страницу проекта.
-
В меню слева нажмите Settings → Issues.
-
Нажмите Create.
-
Заполните поля:
- Key — короткий идентификатор интеграции, который вы будете использовать при написании тестов.
- Issue tracker — имя интеграции, которую вы добавили на шаге 2.1.
-
Нажмите Submit.
3. Настройте встраивание данных в Jira
После завершения этой части настройки ваш экземпляр Jira Data Center будет поддерживать ссылки на задачи Jira как в запусках тестов, так и в конкретных результатах тестов.
Сначала убедитесь, что включены безопасные cookies для ТестОпс. Затем узнайте идентификатор интеграции и используйте его при настройке плагина в Jira.
3.1. Включите безопасные cookies в ТестОпс
По соображениям безопасности веб-браузер пользователя может блокировать обмен cookies между двумя разными веб-сайтами, такими как ТестОпс и Jira. Это может помешать встраиванию на страницу деталей задачи Jira.
Чтобы исправить это, убедитесь, что настройка “secure cookie” включена для вашей установки ТестОпс.
- Kubernetes
- Docker Compose
- DEB
- RPM
Установите для параметра network.tls.secureCookie
значение true
.
В файле .env установите TESTOPS_SECURE_COOKIE
в true
.
Сохраните изменения и перезапустите ТестОпс.
В файле /opt/testops/conf/testops.conf установите ALLURE_SECURE
в true
.
Сохраните изменения и перезапустите ТестОпс.
В файле /opt/testops/conf/testops.conf установите ALLURE_SECURE
в true
.
Сохраните изменения и перезапустите ТестОпс.
3.2. Узнайте ID интеграции в ТестОпс
-
Войдите в ТестОпс, используя учетную запись администратора.
-
Нажмите на свой аватар и перейдите в Администрирование → Интеграции.
-
Найдите интеграцию Jira Data Center.
Запомните ID, который отображается рядом с его именем. Этот ID понадобится вам на следующем шаге.
3.3. Настройка плагина в Jira
-
В Jira выберите Приложения → Управление вашими приложениями в верхнем навигационном меню.
-
Разверните раздел ТестОпс для JIRA и нажмите Настроить.
-
Заполните поля:
-
Общие настройки
- Включено — должно быть отмечено.
- Endpoint — URL вашего экземпляра ТестОпс, например, “https://demo.testops.cloud”.
- Версия — “Версия 4.x.x”.
- ID интеграции — идентификатор, который вы получили в ТестОпс на шаге 3.2.
-
Расположение панелей
- Тест-кейсы — расположение списка результатов тестов.
- Запуски — расположение списка запусков.
ВажноХотя параметры Расположение панелей позволяют перемещать списки на правую сторону (как показано на скриншоте выше), делать это не рекомендуется. В отличие от основной области, правая сторона интерфейса Jira очень ограничена по ширине, что может сделать список ТестОпс неудобным на большинстве дисплеев.
-
-
Нажмите Сохранить.
4. Вк лючение синхронизации жизненных циклов задач
ТестОпс поддерживает вебхуки Jira. Вебхук — это способ для Jira уведомить внешнюю службу об изменении статуса задачи. При получении такого уведомления ТестОпс проверит наличие дефектов, связанных с задачей, и обновит их статус соответствующим образом.
Чтобы включить синхронизацию жизненного цикла, создайте вебхук в ТестОпс и добавьте его в Jira.
4.1. Создание вебхука в ТестОпс
-
Войдите в ТестОпс, используя учетную запись администратора.
-
Нажмите на свой аватар и перейдите в Администрирование → Интеграции.
-
Найдите интеграцию Jira Software Cloud и нажмите на ее название.
-
Перейдите на вкладку Вебхуки.
-
Нажмите Создать вебхук, затем нажмите Подтвердить создание.
-
В появившемся диалоговом окне нажмите значок Копировать, чтобы скопировать токен в буфер обмена.
Этот токен понадобится вам на следующем шаге.
4.2. Добавление вебхука в Jira
-
В Jira нажмите значок шестеренки в правом верхнем углу и выберите Система.
-
В меню слева нажмите Дополнительно → Вебхуки.
-
Нажмите Создать вебхук.
-
Заполните поля:
- Имя — имя, которое поможет вам распознать вебхук.
- Статус — “Включено”.
- URL — URL вебхука, который вы получили на шаге 4.1.
- События, связанные с задачами — выберите “Задача → обновлена”.
-
Нажмите Создать внизу страницы.
Устранение неполадок
Разделы ТестОпс отображают значок ошибки подключения или сообщение об ошибке
Когда Jira отображает индикатор ошибки подключения (значок или “502 Bad Gateway”, в зависимости от браузера) вместо списков ТестОпс, сначала убедитесь, что сам ТестОпс доступен в отдельной вкладке. Если это так, но проблема остается, это означает, что политика Jira Software Cloud не позволяет веб-странице взаимодействовать с iframes с вашего домена ТестОпс.
Чтобы решить эту проблему, вам придется связаться с поддержкой Atlassian. Прежде чем это сделать, мы рекомендуем вам найти пример URL iframe, который не отображается.
-
В Jira откройте страницу задачи, где ожидается отображение содержимого ТестОпс.
-
Откройте инструменты разработчика вашего браузера. Точный способ сделать это может варьироваться в зависимости от браузера.
- Google Chrome
- Mozilla Firefox
- Apple Safari
Перейдите в Меню → Дополнительные инструменты → Инструменты разработчика и нажмите значок Инспектировать элемент или просто нажмите Ctrl+Shift+C.
Перейдите в Меню → Дополнительные инструменты → Инструменты веб-разработчика и нажмите значок Инспектировать элемент или просто нажмите Ctrl+Shift+C.
Убедитесь, что функции для веб-разработчиков включены в браузере. Затем перейдите в Меню → Разработка → Показать веб-инспектор и нажмите значок Начать выбор элемента или просто нажмите Command+Shift+C.
-
Наведите курсор на область, где ожидается отображение содержимого. В дереве исходного кода HTML найдите элемент
<iframe>
, который соответствует этой области.Скопируйте URL атрибута
src
iframe.ВажноВеб-страница может содержать несколько iframe, некоторые из них внутри других (см. скриншот). Убедитесь, что URL, который вы скопировали, указывает на домен ТестОпс.
-
Напишите в поддержку Atlassian, предоставив им URL iframe.
Разделы ТестОпс отображают кнопки входа
Если вы вошли в ТестОпс, но все еще видите кнопки Вход в Jira, это, скорее всего, вызвано настройками безопасности в вашем веб-браузере. Следуйте инструкциям для конкретного браузера ниже, чтобы убедиться, что правильное взаимодействие между Jira и iframes ТестОпс разрешено.
Это должно быть сделано индивидуально каждым пользователем, который сталкивается с этой проблемой.
- Google Chrome
- Mozilla Firefox
- Apple Safari
-
Перейдите в chrome://settings/cookies.
-
В разделе Поведение по умолчанию выберите “Разрешить сторонние файлы cookie”.
-
Перейдите в about:preferences#privacy.
-
В разделе Усиленная защита от отслеживания выберите Настраиваемая.
-
Убедитесь, что флажок Cookies установлен.
-
В выпадающем списке рядом с флажком Cookies выберите “Cookies для межсайтового отслеживания”.
-
Перейдите в Safari → Настройки.
-
От кройте вкладку Конфиденциальность.
-
Снимите флажок Предотвращать межсайтовое отслеживание.
Разделы ТестОпс отображают сообщение “Не удалось подключиться к ТестОпс”
Если разделы ТестОпс говорят “Не удалось подключиться к ТестОпс”, это указывает на то, что ТестОпс не распознает ID интеграции, который он получает от Jira.
Пожалуйста, получите ID интеграции из ТестОпс и убедитесь, что он используется в настройках плагина.