Вебхуки для работы с автотестами
Вебхук для запуска автотестов
HTTP-запрос передается при запуске автотестов из интерфейса Test IT. При настройке вебхуков могут использоваться глобальный идентификатор (ID) проекта или тест-плана. Их можно найти в колонке ID в списке в разделах Проекты и Тест-планы.
Использование переменных `$CONFIGURATIONS_PARAMETERS[KEY]` и `$CUSTOM_PARAMETERS[KEY]`
- Переменная
$CONFIGURATIONS_PARAMETERS[KEY]
передает доступ к значениям параметра конфигурации, на которой запускается автотест.
Пример: Для параметра "OS — Windows" укажите:В теле вебхука отобразится:{ "OperatingSystem": "$CONFIGURATIONS_PARAMETERS[OS]" }
При указании несуществующего ключа параметра в [KEY] отобразится пустое значение.{ "OperatingSystem": "Windows" }
- Переменная
$CUSTOM_PARAMETERS[KEY]
используется аналогичным образом, но значения берутся из параметров, задаваемых при параметризации запуска автотестов.
Доступные специальные переменные
Переменная | Описание |
---|---|
$AUTO_TESTS_COUNT | Количество автотестов, участвующих в запуске |
$BUILD | Номер сборки, указанный при создании тест-плана |
$PRODUCT_NAME | Название продукта, указанное при создании тест-плана |
$PROJECT_GLOBAL_ID | Глобальный идентификатор проекта, к которому относятся запускаемые автотесты |
$PROJECT_ID | Идентификатор проекта в формате GUID, к которому относятся запускаемые автотесты |
$PROJECT_NAME | Название проекта, к которому относятся запускаемые автотесты |
$START_DATE | Дата планируемого начала тест-плана |
$TEST_PLAN_GLOBAL_ID | Глобальный идентификатор тест-плана, в рамках которого происходит запуск автотестов |
$TEST_PLAN_ID | Идентификатор тест-плана в формате GUID, в рамках которого происходит запуск автотестов |
$TEST_PLAN_URL | Ссылка на тест-план в Test IT |
$TEST_POINTS_COUNT | Количество тестовых случаев, участвующих в запуске |
$TEST_RUN_ID | Идентификатор запуска автотестов |
$SERVER_URL | Ссылка на систему Test IT |
$USER_NAME | Имя пользователя, выполнившего запуск автотестов |
$COMPLETED_ON_DATE | Дата и время перевода тест-плана в статус Завершен |
$CONFIGURATION_IDS | Идентификаторы конфигураций |
$CONFIGURATION_NAMES | Названия конфигураций |
$CONFIGURATIONS_PARAMETERS[KEY] | Доступ к значениям параметра конфигурации, на которой запускается автотест |
$CUSTOM_PARAMETERS[KEY] | Доступ к значениям параметра конфигурации, на которой запускается автотест. Значения берутся из параметризации запуска автотеста |
$END_DATE | Дата планируемого окончания тест-плана |
$PROJECT_URL | Ссылка на проект в Test IT, к которому относятся автотесты |
$STARTED_ON_DATE | Дата и время перевода тест-плана в статус В процессе |
$TEST_PLAN_DESCRIPTION | Описание тест-плана |
$TEST_PLAN_DURATION | Продолжительность тест-плана |
$TEST_PLAN_NAME | Название тест-плана |
$TEST_PLAN_STATUS | Статус тест-плана |
$TEST_RUN_COMPLETED_DATE | Дата и время завершения тест-рана |
$TEST_RUN_DESCRIPTION | Описание тест-рана |
$TEST_RUN_NAME | Название тест-рана |
$TEST_RUN_STARTED_DATE | Дата запуска тест-рана |
$TEST_RUN_URL | Ссылка на тест-ран в Test IT |
Пример стандартного тела HTTP
При выборе опции Отправлять стандартный контекст в поле Тело HTTP Test IT передает следующую структуру данных:
{
"AutoTests": [
{
"Classname": "WorkItemServiceTest.cs",
"ExternalId": "10004",
"ExternalKey": null,
"Id": "0101d818-ceee-4bc5-bf07-351195d4f962",
"Name": "WorkItem valid creation test",
"Namespace": "UnitTest.Core",
"ProjectId": "915a9144-9803-42a3-8076-dbc685bfdd1d"
},
{
"Classname": "WorkItemServiceTest.cs",
"ExternalId": "10003",
"ExternalKey": null,
"Id": "01893e23-a953-4509-8cac-650354fa83e3",
"Name": "WorkItem valid creation test",
"Namespace": "UnitTest.Core",
"ProjectId": "915a9144-9803-42a3-8076-dbc685bfdd1d"
}
],
"Build": "build",
"Configurations": [
{
"Id": "7faad2ea-8222-4791-8822-284f0db94649",
"Name": "Any",
"Parameters": {
"Browser": "chrome"
},
"ProjectId": "915a9144-9803-42a3-8076-dbc685bfdd1d"
}
],
"CustomParameters": {
"OperatingSystem": "windows"
},
"Name": "TestRun_2024-04-24T11:25:43",
"ProductName": "my product",
"Status": "NotStarted",
"TestPlanGlobalId": 30,
"TestPlanId": "9dd8429d-f4ee-4fc0-8ed5-31af29de5cc0",
"TestPointIds": [
"4a0663fb-fd47-41f4-9f42-bde8a68d93f6",
"5358d2a6-7486-4435-944c-f57516cef0f4"
],
"TestRunId": "7823ae8b-92a5-47bd-98bb-eb09a27807d4"
}
Вебхук для создания, редактирования и удаления карточек автотестов
HTTP-запрос передается, когда карточка автотеста была создана, отредактирована или удалена.
Доступные специальные переменные
Переменная | Описание |
---|---|
$EVENT_TYPE | Тип события |
$AUTOTEST_ID | Идентификатор автотеста |
$AUTOTEST_NAME | Название автотеста |
$AUTOTEST_URL | Ссылка на автотест в Test IT |
$PROJECT_ID | Идентификатор проекта в формате GUID, к которому относятся автотесты |
$PROJECT_NAME | Название проекта, к которому относятся автотесты |
$PROJECT_URL | Ссылка на проект в Test IT, к которому относятся автотесты |
$AUTOTEST_CLASSNAME | Название класса автотеста |
$PROJECT_GLOBAL_ID | Глобальный идентификатор проекта, к которому относится автотест |
$USER_NAME | Имя пользователя, который создал, отредактировал или удалил карточку автотеста |
Пример стандартного тела HTTP
Пример вебхука для создания автотеста. При выборе опции Отправлять стандартный контекст в поле Тело HTTP Test IT передает следующую структуру данных:
{
"eventType": "CREATED",
"autotestId": "a4f60cc2-3f2b-4949-b779-7c532485efa1",
"autotestName": "string",
"autotestUrl": "https://test.testit.ru/projects/1586/autotests/1588",
"projectId": "cf76841e-fb42-42ab-ae07-2a5d02b04fc3",
"projectName": "вебхуки",
"projectUrl": "https://test.testit.ru/projects/1586"
}
Вебхук для прохождения всех автотестов
HTTP-запрос передается, когда все автотесты в тест-ране (прогоне) пройдены: всем автотестам был проставлен результат Успешен, Провален, Пропущен или Заблокирован, и автотестов со статусами В процессе или Ожидает не осталось.
Доступные специальные переменные
Переменная | Описание |
---|---|
$TEST_RUN_ID | Идентификатор тест-рана |
$TEST_RUN_NAME | Название тест-рана |
$TEST_RUN_URL | Ссылка на тест-ран в Test IT |
$TEST_PLAN_ID | Идентификатор тест-плана (не заполняется, если тест-ран был запущен не в рамках тест-плана) |
$TEST_PLAN_URL | Ссылка на тест-план в Test IT (не заполняется, если тест-ран был запущен не в рамках тест-плана) |
$PROJECT_ID | Идентификатор проекта в формате GUID, к которому относится тест-ран |
$PROJECT_NAME | Название проекта, к которому относится тест-ран |
$PROJECT_URL | Ссылка на проект в Test IT |
$BUILD | Номер сборки, указанный при создании тест-плана |
$COMPLETED_ON_DATE | Дата и время перевода тест-плана в статус Завершен |
$END_DATE | Дата планируемого окончания тест-плана |
$PRODUCT_NAME | Название продукта |
$PROJECT_GLOBAL_ID | Глобальный идентификатор проекта, к которому относятся автотесты |
$START_DATE | Дата планируемого начала тест-плана |
$STARTED_ON_DATE | Дата и время перевода тест-плана в статус В процессе |
$TEST_PLAN_DESCRIPTION | Описание тест-плана |
$TEST_PLAN_DURATION | Продолжительность тест-плана |
$TEST_PLAN_GLOBAL_ID | Глобальный идентификатор тест-плана |
$TEST_PLAN_STATUS | Статус тест-плана |
$TEST_RUN_COMPLETED_DATE | Дата и время завершения тест-рана |
$TEST_RUN_DESCRIPTION | Описание тест-рана |
$TEST_RUN_STARTED_DATE | Дата запуска тест-рана |
Пример стандартного тела HTTP
При выборе опции Отправлять стандартный контекст в поле Тело HTTP Test IT передает следующую структуру данных:
{
"testRunId": "227f2b6b-5361-4196-bbb3-7859ac88891b",
"testRunName": "TestRun_2023-06-15T11:38:57",
"testRunUrl": "https://test.testit.ru/projects/1586/test-plans/1590/test-runs/227f2b6b-5361-4196-bbb3-7859ac88891b",
"testPlanId": "9c294e9c-e79c-44a2-8ba7-6ee649fc3202",
"testPlanName": "23",
"testPlanUrl": "https://test.testit.ru/projects/1586/test-plans/1590/plan",
"projectId": "cf76841e-fb42-42ab-ae07-2a5d02b04fc3",
"projectName": "вебхуки",
"projectUrl": "https://test.testit.ru/projects/1586"
}
Вебхук для остановки тест-рана
HTTP-запрос передается при остановке тест-рана с помощью API-метода POST/api/v2/testRuns/{id}/stop
.
Доступные специальные переменные
Переменная | Описание |
---|---|
$TEST_RUN_ID | Идентификатор тест-рана |
$TEST_RUN_NAME | Название тест-рана |
$TEST_RUN_URL | Ссылка на тест-ран в Test IT |
$TEST_PLAN_ID | Идентификатор тест-рана (не заполняется, если тест-ран запущен не в рамках тест-плана) |
$TEST_PLAN_NAME | Название тест-рана (не заполняется, если тест-ран запущен не в рамках тест-плана) |
$TEST_PLAN_URL | Ссылка на тест-план в Test IT (не заполняется, если тест-ран запущен не в рамках тест-плана) |
$PROJECT_ID | Идентификатор проекта в формате GUID, к которому относится тест-ран |
$PROJECT_NAME | Название проекта, к которому относится тест-ран |
$PROJECT_URL | Ссылка на проект в Test IT, к которому относится тест-ран |
$BUILD | Номер сборки, указанный при создании тест-плана |
$COMPLETED_ON_DATE | Дата и время перевода тест-плана в статус Завершен |
$END_DATE | Дата планируемого окончания тест-плана |
$PRODUCT_NAME | Название продукта |
$PROJECT_GLOBAL_ID | Глобальный идентификатор проекта, к которому относится тест-план |
$START_DATE | Дата планируемого начала тест-плана |
$STARTED_ON_DATE | Дата и время перевода тест-плана в статус В процессе |
$TEST_PLAN_DESCRIPTION | Описание тест-плана |
$TEST_PLAN_DURATION | Продолжительность тест-плана |
$TEST_PLAN_GLOBAL_ID | Глобальный идентификатор тест-плана |
$TEST_PLAN_STATUS | Статус тест-плана |
$TEST_RUN_COMPLETED_DATE | Дата и время завершения тест-рана |
$TEST_RUN_DESCRIPTION | Описание тест-рана |
$TEST_RUN_STARTED_DATE | Дата запуска тест-рана |
Пример стандартного тела HTTP
При выборе опции Отправлять стандартный контекст в поле Тело HTTP Test IT передает следующую структуру данных:
{
"projectId": "cf76841e-fb42-42ab-ae07-2a5d02b04fc3",
"projectName": "вебхуки",
"projectUrl": "https://test.testit.ru/projects/1586",
"testPlanId": "9c294e9c-e79c-44a2-8ba7-6ee649fc3202",
"testPlanName": "23",
"testPlanUrl": "https://test.testit.ru/projects/1586/test-plans/1590/plan",
"testRunId": "7c0400f8-ad43-4e45-9cf7-382047f4044f",
"testRunName": "TestRun_2023-06-15T11:46:31",
"testRunUrl": "https://test.testit.ru/projects/1586/test-plans/1590/test-runs/7c0400f8-ad43-4e45-9cf7-382047f4044f"
}
Вебхук для прохождения автотеста
HTTP-запрос передается, когда автотесту проставляется результат Успешен, Провален, Пропущен или Заблокирован.
Доступные специальные переменные
Переменная | Описание |
---|---|
$RESULT_NAME | Результат автотеста: Успешен, Пропущен, Провален или Заблокирован |
$RESULT_URL | Ссылка на результат автотеста |
$AUTOTEST_ID | Идентификатор автотеста |
$AUTOTEST_NAME | Название автотеста |
$AUTOTEST_URL | Ссылка на автотест |
$TEST_RUN_ID | Идентификатор тест-рана |
$TEST_RUN_NAME | Название тест-рана |
$TEST_RUN_URL | Ссылка на тест-ран в Test IT |
$PROJECT_ID | Идентификатор проекта в формате GUID, к которому относится тест-ран |
$PROJECT_NAME | Название проекта, к которому относится тест-ран |
$PROJECT_URL | Ссылка на проект в Test IT, к которому относится автотест |
$AUTOTEST_CLASSNAME | Название класса автотеста |
$PROJECT_GLOBAL_ID | Глобальный идентификатор проекта, к которому относится тест-план |
$TEST_RUN_COMPLETED_DATE | Дата и время завершения тест-рана |
$TEST_RUN_DESCRIPTION | Описание тест-рана |
$TEST_RUN_STARTED_DATE | Дата запуска тест-рана |
Пример стандартного тела HTTP
При выборе опции Отправлять стандартный контекст в поле Тело HTTP Test IT передает следующую структуру данных:
{
"resultName": "Passed",
"resultUrl": "https://test.testit.ru/projects/1586/test-plans/1590/results?testResultId=471a0169-e327-4302-b500-4d68241282ef",
"autotestId": "a4f60cc2-3f2b-4949-b779-7c532485efa1",
"autotestName": "string",
"autotestUrl": "https://test.testit.ru/projects/1586/autotests/1588",
"testRunId": "227f2b6b-5361-4196-bbb3-7859ac88891b",
"testRunName": "TestRun_2023-06-15T11:38:57",
"testRunUrl": "https://test.testit.ru/projects/1586/test-plans/1590/test-runs/227f2b6b-5361-4196-bbb3-7859ac88891b",
"projectId": "cf76841e-fb42-42ab-ae07-2a5d02b04fc3",
"projectName": "вебхуки",
"projectUrl": "https://test.testit.ru/projects/1586"
}
Изменение связи между автотестом и рабочим элементом
HTTP-запрос передается, когда связь между автотестом и рабочим элементом создается или удаляется.
Доступные специальные переменные
Переменная | Описание |
---|---|
$EVENT_TYPE | Тип события |
$AUTOTEST_ID | Идентификатор автотеста |
$AUTOTEST_NAME | Название автотеста |
$AUTOTEST_URL | Ссылка на автотест |
$WORK_ITEM_ID | Идентификатор рабочего элемента |
$WORK_ITEM_NAME | Название рабочего элемента |
$WORK_ITEM_URL | Ссылка на рабочий элемент |
$PROJECT_ID | Идентификатор проекта в формате GUID, к которому относятся запускаемые автотесты |
$PROJECT_NAME | Название проекта, к которому относятся запускаемые автотесты |
$ROJECT_URL | Ссылка на проект в Test IT, к которому относится автотест |
$AUTOTEST_CLASSNAME | Название класса автотеста |
$PROJECT_GLOBAL_ID | Глобальный идентификатор проекта, к которому относится тест-план |
$USER_NAME | Имя пользователя, который создал или удалил связь между ручным и автоматическим тестом |
$WORK_ITEM_DURATION | Продолжительность прохождения ручного теста |
$WORK_ITEM_PRIORITY | Приоритет ручного теста |
$WORK_ITEM_SECTION | Секция, к которой относится ручной тест |
$WORK_ITEM_TYPE | Тип рабочего элемента (ручного теста) |
Пример стандартного тела HTTP
При выборе опции Отправлять стандартный контекст в поле Тело HTTP Test IT передает следующую структуру данных:
{
"eventType": "UPDATED",
"workItemId": "e4428f83-fe7f-4740-9e4f-8a6136360ef6",
"workItemName": "Test incremental search with multi-page document",
"workItemType": "TestCases",
"workItemUrl": "https://regress01.qa.enterprise.testit.ru/projects/1/tests/1347",
"projectId": "7470422c-7db0-4402-8513-fbd7e23d04a4",
"projectName": "lugg",
"projectUrl": "https://regress01.qa.enterprise.testit.ru/projects/1"
}