Интеграция с 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.
В появившемся окне введите название, которое поможет вам распознать API-ключ, например, «Ключ для ТестОпс».
Нажмите Generate Key.
Созданный ключ отобразится в окне. Выберите и скопируйте его.
Этот ключ понадобится вам на одном из следующих шагов.
Нажмите Add Key, затем Save Settings, чтобы сохранить созданный ключ.
1.3. Добавление сервера TestRail в ТестОпс
Войдите в ТестОпс, используя учетную запись администратора.
Перейдите в раздел Администрирование → Интеграции.
Нажмите + Добавить интеграцию в правом верхнем углу страницы.
В появившемся окне выберите TestRail.
Заполните поля:
- Название — название, которое поможет вам распознать сервер TestRail, например, TestRail production.
- Endpoint — URL-адрес сервера TestRail, например, https://example.testrail.io/.
- TestRail version — 6.7 or later.
Если ваш сервер TestRail использует самоподписанный SSL-сертификат, поставьте галочку Disable certificate validation.
Нажмите Добавить интеграцию.
1.4. Добавление интеграции TestRail в проект ТестОпс
Откройте ваш проект в ТестОпс.
Перейдите в раздел Настройки → Интеграции.
В разделе Доступные интеграции найдите интеграцию TestRail и нажмите Добавить интеграцию рядом с ней.
Заполните поля:
- Username — адрес электронной почты, который вы используете для входа в TestRail.
- API key — API-ключ, который вы получили на шаге 1.2.
Нажмите Проверить соединение. Если учетные данные верны, через несколько секунд появится сообщение «Соединение установлено».
Нажмите Добавить интеграцию, чтобы сохранить настройки.
1.5. Получение необходимых данных из проекта TestRail
Все тест-кейсы, экспортированные из ТестОпс, будут размещены в одном разделе одного тестового набора в TestRail. На этом шаге вы узнаете идентификаторы тестового набора и раздела, которые вам нужно будет указать в ТестОпс для корректной работы интеграции.
В панели управления TestRail нажмите на проект, в который вы хотите включить экспорт.
Запомните название проекта. Это название понадобится на следующем шаге для поля Project.
Перейдите на вкладку Test Suites & Cases.
Нажмите на тестовый набор, в который вы хотите включить экспорт. При необходимости вы можете создать новый тестовый набор.
Обратите внимание на идентификатор рядом с заголовком. Это Suite ID, который вам понадобится на следующем шаге.
В древовидном представлении справа нажмите на раздел, в который вы хотите включить экспорт. При необходимости вы можете создать новый тестовый набор.
Обратите внимание на параметр group_id, который появится в адресной строке веб-браузера. Это Section ID, который вам понадобится на следующем шаге.
1.6. Включение синхронизации
Откройте ваш проект в ТестОпс.
Перейдите в раздел Настройки → Интеграции.
Нажмите на интеграцию, которую вы добавили на шаге 1.4.
На вкладке Синхронизация с TMS нажмите Создать.
Укажите Project, Suite ID и Section ID, которые вы получили на предыдущем шаге. Используйте только числовые части идентификаторов, например, «S29» должно быть указано как «29».
Укажите, какие данные ТестОпс должен экспортировать в TestRail:
- Фильтр по тест-кейсам — AQL-запрос для выбора тест-кейсов, которые будут синхронизированы, например,
automation = false
. Оставьте пустым, чтобы синхронизировать все тест-кейсы. - Фильтр по запускам — AQL-запрос для выбора запусков, которые будут синхронизированы, например,
name ~= "Release"
. Оставьте пустым, чтобы синхронизировать все запуски. - Отключить экспорт — поставьте галочку, чтобы полностью отключить интеграцию TestRail.
- Отключить создание тест-кейсов — поставьте галочку, чтобы отключить экспорт информации о новых тест-кейсах.
- Отключить синхронизацию запусков — поставьте галочку, чтобы отключить экспорт информации о запусках тестов.
- Фильтр по тест-кейсам — AQL-запрос для выбора тест-кейсов, которые будут синхронизированы, например,
Нажмите Отправить, чтобы применить изменения.
Важно
Синхронизация с TMS автоматически отключится, если учетные данные для доступа по API недействительны, были отозваны или имеют недостаточный уровень доступа. Чтобы возобновить синхронизацию, введите актуальные учетные данные с достаточным уровнем доступа.
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. Настройка сопоставления в ТестОпс
- Откройте ваш проект в ТестОпс.
- Перейдите в раздел Настройки → Интеграции.
- Нажмите на интеграцию, которую вы добавили на шаге 1.4.
- На вкладке Синхронизация с TMS нажмите Создать.
- Для каждого поля, которое вы хотите экспортировать в TestRail, введите префикс
custom_
, за которым следует идентификатор, который вы указали как System Name в TestRail на шаге 2.1. - Нажмите Отправить, чтобы применить изменения.
3. Настройка сопоставления статусов
И ТестОпс, и TestRail имеют настраиваемые системы статусов тестов. При настройке синхронизации рекомендуется создать в TestRail тот же набор статусов, который у вас есть в воркфлоу ТестОпс, а затем сопоставить их друг с другом.
3.1. Получение статусов из ТестОпс
Войдите в ТестОпс, используя учетную запись администратора.
Перейдите в раздел Администрирование → Статусы.
Запомните идентификатор каждого статуса. Эти идентификаторы понадобятся вам на шаге 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. Настройка сопоставления
Откройте ваш проект в ТестОпс.
Перейдите в раздел Настройки → Интеграции.
Нажмите на интеграцию, которую вы добавили на шаге 1.4.
На вкладке Синхронизация с TMS нажмите Создать.
В разделе Status Mapping заполните поля:
- Field name — системное имя поля, которое вы настроили в TestRail на шаге 3.2.
- Default value — введите префикс
custom_
, за которым следует идентификатор статуса в TestRail. Это значение будет использоваться, когда нет другого применимого сопоставления.
Для каждого статуса, который у вас есть в воркфлоу ТестОпс, нажмите Добавить и заполните поля:
- Source ID — идентификатор статуса в ТестОпс, который вы нашли на шаге 3.1.
- Target ID — идентификатор статуса в TestRail, который вы указали на шаге 3.2.
Нажмите Отправить, чтобы применить изменения.