Интеграция с TestRail
Интеграция с TestRail — это односторонняя (только экспорт) интеграция, которая регулярно отправляет данные о тест-кейсах и запусках в указанную инстанцию TestRail. Интеграция поддерживает Allure Query Language для ограничения объема данных, подлежащих экспорту, т.е. вы можете зеркалировать только тест-кейсы с определенным тегом.
ТестОпс поддерживает экспорт только в проекты TestRail, которые используют несколько тестовых наборов. См. Проекты и их типы в документации TestRail, чтобы изменить тип вашего проекта, если это необходимо.
1. Включение базовой синхронизации
1.1. Включение API в TestRail
- В TestRail перейдите в Administration → Site Settings → API.
- Установите флажки Enable API и Enable session authentication for API.
- Нажмите Save Settings.
1.2. Создание API-кл юча в TestRail
-
В TestRail нажмите на свое имя в правом верхнем углу и выберите My Settings.
-
Перейдите на вкладку API Keys.
-
Нажмите Add Key.
-
В появившемся диалоговом окне введите Name, чтобы помочь вам распознать API-ключ, например, «Ключ для ТестОпс».
-
Нажмите Generate Key.
Сгенерированный ключ появится в диалоговом окне. Выберите и скопируйте его.
Этот ключ понадобится вам на одном из следующих шагов.
-
Нажмите Add Key, затем Save Settings, чтобы сохранить сгенерированный ключ.
1.3. Добавление сервера TestRail в ТестОпс
-
Войдите в ТестОпс, используя учетную запись администратора.
-
Нажмите на свой аватар и перейдите в Administration → Integrations.
-
Нажмите Add integration в правом верхнем углу страницы.
-
В появившемся диалоговом окне выберите TestRail.
-
Заполните поля:
- Name — имя, которое поможет вам распознать сервер TestRail, например, «TestRail production».
- Endpoint — URL сервера TestRail, например, «https://example.testrail.io/».
- TestRail version — «6.7 или позже».
-
Если ваш сервер TestRail использует самоподписанный SSL-сертификат, установите флажок Disable certificate validation.
-
Нажмите Add integration.
1.4. Добавление интеграции TestRail в проект ТестОпс
-
В ТестОпс перейдите на страницу проекта.
-
В меню слева нажмите Settings → Integrations.
-
В разделе Available integrations найдите интеграцию TestRail и нажмите Add integration рядом с ней.
-
В появившемся диалоговом окне заполните поля:
- Username — адрес электронной почты, который вы используете для входа в TestRail.
- API key — API-ключ, который вы получили на шаге 1.2.
СоветПроверьте правильность учетных данных
Нажмите Test connection. Через несколько мгновений должно появиться сообщение «Connection established».
-
Нажмите Add integration, чтобы закрыть диалоговое окно и сохранить настройки.
1.5. Получение необходимых данных из проекта TestRail
Все тест-кейсы, экспортированные из ТестОпс, будут размещены в одном разделе одного тестового набора в TestRail. На этом шаге вы узнаете идентификаторы набора и раздела, которые вам нужно будет указать в ТестОпс для корректной работы интеграции.
-
На панели управления TestRail нажмите на проект, в который вы хотите включить экспорт.
Запомните название проекта. Это Project, который вам понадобится на следующем шаге.
-
Перейдите на вкладку Test Suites & Cases.
Нажмите на набор, в который вы хотите включить экспорт. При необходимости вы можете создать новый набор.
Обратите внимание на идентификатор рядом с заголовком. Это Suite ID, который вам понадобится на следующем шаге.
-
В древовидном представлении справа нажмите на раздел, в который вы хотите включить экспорт. При необходимости вы можете создать новый набор.
Обратите внимание на параметр
group_id
, который появится в строке адреса веб-браузера. Это Section ID, который вам понадобится на следующем шаге.
1.6. Включение синхронизации
-
В ТестОпс перейдите на страницу проекта.
-
В меню слева нажмите Settings → Integrations.
-
Нажмите на интеграцию, которую вы добавили на шаге 1.4.
-
На вкладке TMS Sync нажмите Create.
-
Укажите Project, Suite ID и Section ID, которые вы получили на предыдущем шаге. Используйте только числовые части идентификаторов, например, «S29» должно быть указано как «29».
-
Укажите, какие данные ТестОпс должен экспортировать в TestRail:
- Test Case AQL — AQL выражение для выбора тест-кейсов, которые будут синхронизированы, например,
automation = false
. Оставьте пустым, чтобы синхронизировать все тест-кейсы. - Launches AQL — AQL выражение для выбора запусков, которые будут синхронизированы, например,
name ~= "Release"
. Оставьте пустым, чтобы синхронизировать все запуски. - Disable export — установите флажок, чтобы полностью отключить интеграцию TestRail.
- Disable Test Case create — установите флажок, чтобы отключить экспорт информации о новых тест-кейсах.
- Disable Launches sync — установите флажок, чтобы отключить экспорт информации о запусках тестов.
- Test Case AQL — AQL выражение для выбора тест-кейсов, которые будут синхронизированы, например,
-
Нажмите Submit, чтобы применить изменения.
2. Настройка сопоставления полей
Некот орые из экспортируемых полей тест-кейсов не стандартизированы в TestRail, а именно:
- описание,
- предусловие,
- ожидаемый результат,
- сценарий.
Вы можете создать поля в TestRail и указать их названия в ТестОпс.
2.1. Создание пользовательских полей в TestRail
-
В TestRail перейдите в Administration → Customizations.
Должен появиться список Case Fields.
-
Для каждого поля, которое вы хотите экспортировать в TestRail:
-
Нажмите Add Field.
-
В появившейся форме заполните поля:
- Label — метка, под которой поле должно отображаться в деталях тест-кейса в TestRail. Например, “Description”, “Precondition”, “Expected” и т. д.
- System Name — уникальный идентификатор поля. Он будет использоваться ТестОпс при экспорте поля. Например, “description”, “preconds”, “expected” и т. д.
- Type — «Steps» для поля, которо е будет хранить сценарий теста как отдельные шаги, «Text» для всех остальных полей. Если вы предпочитаете экспортировать сценарий в виде простого текста, выберите «Text» для всех полей.
-
В нижней части формы нажмите Add Projects & Options.
В появившемся диалоговом окне перейдите на вкладку Selected Projects, выберите «These options apply to the following projects only» и установите флажок для вашего проекта. Затем нажмите OK, чтобы закрыть диалоговое окно.
-
Нажмите Add Field, чтобы закрыть форму и применить изменения.
-
2.2. Настройка сопоставления в ТестОпс
-
В ТестОпс перейдите на страницу проекта.
-
В меню слева нажмите Settings → Integrations.
-
Нажмите на интеграцию, которую вы добавили на шаге 1.4.
-
На вкладке TMS Sync нажмите Edit.
-
Для каждого поля, которое вы хотите экспор тировать в TestRail, введите префикс «custom_», за которым следует идентификатор, который вы указали как System Name в TestRail на шаге 2.1.
-
Нажмите Submit, чтобы применить изменения.
3. Настройка сопоставления статусов
И ТестОпс, и TestRail имеют настраиваемые системы статусов тестов. При настройке синхронизации рекомендуется создать в TestRail тот же набор статусов, который у вас есть в рабочем процессе ТестОпс, а затем сопоставить их друг с другом.
3.1. Получение статусов из ТестОпс
-
Войдите в ТестОпс, используя учетную запись администратора.
-
Нажмите на свой аватар и перейдите в Administration → Status.
-
Запомните идентификатор каждого статуса. Эти идентификаторы понадобятся вам на шаге 3.3.
3.2. Добавление пользовательских статусов в TestRail
-
В TestRail перейдите в Administration → Customizations.
Должен появиться список Case Fields.
-
Нажмите Add Field, чтобы создать новое поле, которое будет хранить статус тест-кейса. В качестве альтернативы вы можете использовать существующее поле типа «Dropdown».
-
В появившейся форме заполните поля:
- Label — метка, под которой поле должно отображаться в деталях тест-кейса в TestRail, например "Status".
- System Name — уникальный идентификатор поля, нап ример, "status". Он будет использоваться ТестОпс при экспорте поля.
- Type — «Dropdown».
-
В нижней части формы нажмите Add Projects & Options.
Должно появиться диалоговое окно с вкладками Options и Selected Projects.
-
На вкладке Options введите идентификаторы и названия статусов, которые вы хотите добавить в TestRail. Идентификаторы должны быть положительными числами и уникальными. Каждая строка должна содержать один идентификатор и одно название, разделенные запятой и пробелом.
Запомните идентификатор каждого статуса. Эти идентификаторы понадобятся вам на шаге 3.3.
-
На вкладке Selected Projects выберите «These options apply to the following projects only» и установите флажок для вашего проекта.
-
Нажмите OK, чтобы закрыть диалоговое окно, затем нажмите Add Field, чтобы закрыть форму и применить изменения.
3.3. Настройка сопоставления
-
В ТестОпс перейдите на страницу проекта.
-
В меню слева нажмите Settings → Integrations.
-
Нажмите на интеграцию, которую вы добавили на шаге 1.4.
-
На вкладке TMS Sync нажмите Edit.
-
В разделе Status Mapping заполните поля:
- Field name — системное имя поля, которое вы настроили в TestRail на шаге 3.2.
- Default value — введите префикс «custom_», за которым следует идентификатор статуса в TestRail. Это значение будет использоваться, когда нет другого применимого сопоставления.
-
Для каждого статуса, который у вас есть в рабочем процессе ТестОпс, нажмите Add и заполните поля:
- Source ID — идентификатор статуса в ТестОпс, который вы нашли на шаге 3.1.
- Target ID — идентификатор статуса в TestRail, который вы указали на шаге 3.2.
-
Нажмите Submit, чтобы применить изменения.