Интеграция с TestRail
Интеграция с TestRail позволяет автоматически экспортировать тест-кейсы и запуски из ТестОпс в TestRail. Вы можете использовать Allure Query Language, чтобы выбрать нужный набор данных для экспорта.
Важно
ТестОпс поддерживает экспорт только в проекты TestRail, которые используют несколько тестовых наборов. См. Проекты и их типы в документации TestRail, чтобы изменить тип вашего проекта, если это необходимо.
Примечание
Чтобы настроить или удалить интеграцию в ТестОпс, вы должны иметь доступ к разделам:
- Администрирование — необходимы права администратора инстанса;
- Настройки в конкретном проекте — необходима роль владельца этого проекта.
Настройка интеграции
Чтобы настроить интеграцию с TestRail:
Включите API и создайте API-ключ в TestRail.
На уровне инстанса ТестОпс добавьте интеграцию с TestRail, указав:
- название интеграции;
- URL-адрес TestRail;
- версию TestRail.
На уровне инстанса или проекта ТестОпс включите добавленную интеграцию для проекта, указав учетные данные с созданным API-ключом из TestRail.
Получите данные из проекта TestRail, необходимые для синхронизации между TestRail и ТестОпс.
Включите синхронизацию между TestRail и ТестОпс.
Настройте маппинг полей между 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 production.
- Endpoint — URL-адрес инстанса TestRail, например, https://example.testrail.io/.
- Версия TestRail — 6.7 or later.
Если ваш инстанс TestRail использует самоподписанный SSL-сертификат, поставьте галочку Отключить проверку сертификата.
Нажмите Добавить интеграцию.
1.4. Включите интеграцию для проекта ТестОпс
Чтобы включить интеграцию в нужном проекте ТестОпс воспользуйтесь одним из двух способов ниже:
Перейдите в раздел Администрирование → Интеграции.
В списке настроенных интеграций найдите и откройте вашу интеграцию с TestRail.
Перейдите на вкладку Проекты.
Нажмите + справа от поля поиска.
В выпадающем списке Проект выберите нужный проект.
В появившемся окне заполните поля:
- Имя пользователя — адрес электронной почты, который вы используете для входа в TestRail.
- API-ключ — API-ключ, который вы получили на шаге 1.2.
Нажмите Проверить соединение. Если учетные данные верны, через несколько секунд появится сообщение «Соединение установлено».
Нажмите Добавить интеграцию, чтобы сохранить настройки.
1.5. Получите необходимые данные из проекта TestRail
Все тест-кейсы, экспортированные из ТестОпс, будут размещены в одном разделе одного тестового набора в TestRail. На этом шаге вы узнаете ID тестового набора и раздела, которые вам нужно будет указать в ТестОпс для корректной работы интеграции.
В панели управления TestRail нажмите на проект, в который вы хотите включить экспорт.
Запомните название проекта. Это название понадобится на шаге 1.6 для поля Project.
Перейдите на вкладку Test Suites & Cases.
Нажмите на тестовый набор, в который вы хотите включить экспорт. При необходимости вы можете создать новый тестовый набор.
Обратите внимание на ID рядом с названием. Это Suite ID, который вам понадобится на шаге 1.6.
В древовидном представлении справа нажмите на раздел, в который вы хотите включить экспорт. При необходимости вы можете создать новый тестовый набор.
Обратите внимание на параметр group_id, который появится в адресной строке веб-браузера. Это Section ID, который вам понадобится на шаге 1.6.
1.6. Включите синхронизацию в ТестОпс
Перейдите в ваш проект в ТестОпс.
Перейдите в раздел Настройки → Интеграции.
В разделе Добавленные интеграции найдите и откройте вашу интеграцию с TestRail.
Перейдите на вкладку Синхронизация с TMS.
Нажмите + Создать.
В открывшемся окне заполните поля:
- Project — укажите проект TestRail (из шага 1.5), в который будут экспортироваться данные.
- Test Case AQL — введите AQL-запрос, чтобы отфильтровать тест-кейсы, которые вы хотите экспортировать. Оставьте поле пустым, чтобы экспортировать все тест-кейсы.
- Launches AQL — введите AQL-запрос, чтобы отфильтровать запуски, которые будут экспортированы для выбранных тест-кейсов. Оставьте поле пустым, чтобы экспортировать все запуски.
- Disable Launches sync — поставьте галочку, если вы хотите отключить экспорт всех запусков.
- Email for notifications — укажите электронную почту для получения уведомлений от интеграции.
- Suite ID — укажите ID тестового набора TestRail (из шага 1.5). Используйте только числовую часть ID, например, «S29» должно быть указано как «29».
- Section ID — укажите ID раздела TestRail (из шага 1.5).
Нажмите Отправить.
После создания конфигурации и успешного экспорта тест-кейсов, вы можете отключить экспорт новых тест-кейсов, соответствующих этой конфигурации. Для этого:
- На вкладке Синхронизация с TMS откройте нужную конфигурацию экспорта.
- Поставьте галочку Disable Test Case create — будут экспортироваться только изменения и запуски ранее экспортированных тест-кейсов.
Чтобы отключить конфигурацию экспорта, не удаляя ее:
- На вкладке Синхронизация с TMS откройте нужную конфигурацию экспорта.
- Поставьте галочку Disable export.
Важно
Синхронизация с 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. Настройте маппинг в ТестОпс
Перейдите в ваш проект в ТестОпс.
Перейдите в раздел Настройки → Интеграции.
В разделе Добавленные интеграции найдите и откройте вашу интеграцию с TestRail.
Перейдите на вкладку Синхронизация с TMS.
Откройте нужную конфигурацию экспорта.
В открывшемся окне в разделе Settings укажите значения полей, которые вы хотите экспортировать в TestRail. Для этого сначала введите префикс "custom_", после него — идентификатор, который вы указали как System Name в TestRail на шаге 2.1.
Например, в поле Precondition может быть указано значение "custom_preconds".
Нажмите Отправить.
3. Настройка маппинга статусов
И ТестОпс, и TestRail имеют настраиваемые системы статусов тестов. При настройке синхронизации рекомендуется создать в TestRail тот же набор статусов, который у вас есть в воркфлоу ТестОпс, а затем сопоставить их друг с другом.
3.1. Создайте пользовательские статусы в TestRail
В TestRail перейдите в Administration → Customizations.
Должен появиться список Case Fields.
Нажмите Add Field, чтобы создать новое поле, которое будет хранить статус тест-кейса. В качестве альтернативы вы можете использовать существующее поле типа Dropdown.
В появившейся форме заполните поля:
- Label — метка, под которой должно отображаться поле в деталях тест-кейса в TestRail, например "Status".
- System Name — уникальный идентификатор поля, например, "status". Он будет использоваться ТестОпс при экспорте поля.
- Type — Dropdown.
В нижней части формы нажмите Add Projects & Options.
Должно появиться окно с вкладками Options и Selected Projects.
На вкладке Options введите ID и названия статусов, которые вы хотите добавить в TestRail. ID должны быть положительными числами и уникальными. Каждая строка должна содержать один ID и одно название, разделенные запятой и пробелом.
Запомните ID каждого статуса. Они понадобятся вам на шаге 3.3.
На вкладке Selected Projects выберите These options apply to the following projects only и поставьте галочку для вашего проекта.
Нажмите OK, чтобы закрыть окно. Затем нажмите Add Field, чтобы закрыть форму и применить изменения.
3.2. Определите ID статусов в ТестОпс
Перейдите в ваш инстанс ТестОпс.
Перейдите в раздел Администрирование → Статусы.
Слева от названия каждого статуса найдите его ID.
Cохраните полученные ID. Они понадобятся вам на шаге 3.3.
3.3. Настройте маппинг в ТестОпс
Перейдите в ваш проект в ТестОпс.
Перейдите в раздел Настройки → Интеграции.
В разделе Добавленные интеграции найдите и откройте вашу интеграцию с TestRail.
Перейдите на вкладку Синхронизация с TMS.
Откройте нужную конфигурацию экспорта.
В разделе Status Mapping заполните поля:
- Field name — укажите системное имя поля, которое вы настроили в TestRail на шаге 3.1.
- Default value — сначала введите префикс "custom_", после него — идентификатор статуса в TestRail. Это значение будет использоваться, когда нет другого применимого сопоставления.
Для каждого статуса, который у вас есть в воркфлоу ТестОпс, в разделе Status Mapping нажмите + Добавить и заполните поля:
Нажмите Отправить.
Удаление интеграции
Вы можете удалить интеграцию с TestRail двумя способами — на уровне всего инстанса ТестОпс или на уровне отдельного проекта.
Важно
Последствия удаления интеграции:
Удаление на уровне инстанса — все связи с тест-кейсами TestRail, которые относятся к интеграции, будут удалены из сущностей ТестОпс. Это действие необратимо — восстановить удалённые ссылки будет невозможно.
Удаление на уровне проекта — все связи с тест-кейсами TestRail, которые относятся к интеграции, будут сохранены в сущностях ТестОпс, но вы не сможете создавать новые связи для этого проекта. Дополнительно в проекте будет отключена синхронизация с TestRail.
Чтобы удалить интеграцию на уровне инстанса ТестОпс, предварительно удалите ее из проектов, в которых она используется.
- Перейдите в раздел Администрирование → Интеграции.
- В списке настроенных интеграций найдите и откройте вашу интеграцию с TestRail.
- На вкладке Конфигурация нажмите Удалить интеграцию.
- Нажмите Удалить.