API ТестОпс
ТестОпс не предоставляет публичного API.
Описание всех API-методов, доступных в ТестОпс, расположено по URL-адресу <ваш домен ТестОпс>/swagger-ui.html
:
- Все API-запросы полностью повторяют поведение интерфейса ТестОпс: каждый запрос, отправляемый через API, идентичен запросам, которые интерфейс отправляет на бэкенд.
- Чтобы использовать API, имитируйте запросы, которые выполняет интерфейс ТестОпс.
Ограничения
Важно
Вы можете использовать все описанные API-методы в ваших приложениях за исключением методов для загрузки результатов тестов. Загрузка результатов — это проприетарный процесс, который может быть изменен в любое время без уведомления и без поддержки с нашей стороны.
Для загрузки результатов тестов мы рекомендуем использовать только созданные нами инструменты: CI-плагины (например, плагин для Jenkins) или allurectl. Эти инструменты всегда соответствуют актуальному процессу загрузки и обеспечивают стабильную производительность системы.
Страница Swagger
На странице Swagger в ТестОпс вы можете изменить отображение API-методов в зависимости от рассматриваемой функциональности ТестОпс:
В правом верхнем углу нажмите на выпадающий список Select a definition.
Выберите нужный раздел:
- Report Service — API-методы для создания, изменения и получения информации о тест-кейсах, результатах тестов, запусках и т. д.
- UAA Service — API-методы для управления правами доступа пользователей ТестОпс, добавления новых пользователей, а также для работы с лицензиями ТестОпс.
- All Services — все доступные API-методы ТестОпс (объединение API-методов из разделов Report Service и UAA Service).
Тестовые запросы
Вы можете протестировать методы API непосредственно на странице Swagger, нажав Try it out.
Вы увидите результат вызова метода и команду cURL, которую можно использовать для этого вызова.
Аутентификация
Когда вы нажимаете кнопку Try it out, Swagger автоматически использует cookie вашего браузера для аутентификации, дополнительных настроек в этом случае не требуется.
При разработке собственной интеграции вам необходимо сгенерировать Bearer-токен и использовать его для аутентификации ваших запросов к API ТестОпс.
Получение токена
shell
export ENDPOINT="https://testops.example.com"
export USER_TOKEN="ef06773a-544b-4f0b-ad53-5a11972c8b74"
echo "Obtaining jwt token"
JWT_TOKEN=$(curl -s -X POST "${ENDPOINT}/api/uaa/oauth/token" \
--header "Expect:" \
--header "Accept: application/json" \
--form "grant_type=apitoken" \
--form "scope=openid" \
--form "token=${USER_TOKEN}" \
| jq -r .access_token)
Использование токена
shell
echo "Getting user information"
curl -s -G "${ENDPOINT}/api/uaa/me" \
--header "Accept: application/json" \
--header "Authorization: Bearer ${JWT_TOKEN}"
Срок действия токена
Полученный Bearer-токен имеет ограниченный срок действия, который по умолчанию составляет 1 час. По истечении этого срока вашему приложению нужно будет получить токен повторно.
Срок действия Bearer-токена можно изменить, используя параметр ALLURE_JWT_ACCESS_TOKEN_VALIDITY_SECONDS
в настройках вашего инстанса ТестОпс.