Примеры запросов#

Раздел содержит примеры cURL-команд для:

Примеры указаны для Linux и MacOSX. Если вы используете Windows, обратите внимание, что синтаксис зависит от используемой версии утилиты сURL и командной оболочки. Например, если вы используете cURL, встроенный в Windows 10, и командную строку cmd.exe:

  • замените символ \ на ^ для перевода строки;

  • замените все одинарные кавычки '' на двойные "";

  • если тело запроса включает двойные кавычки "", экранируйте их с помощью символа \.

Запуски теста#

Запуск теста#

Чтобы запустить тест, выполните команду:

curl --location --request POST 'https://{BASE_URL}/public-api/v1/testRun' \
--header 'api-token: <Ваш API токен>' \
--header 'Content-Type: application/json' \
--data '{
  "testId": 3,
  "testVersionId": 3,
  "testMode": "TEST",
  "inheritLabelsFromTest": true
}'

Параметр заголовка:

Тело запроса:

  • testId. ID теста. Чтобы узнать ID теста:

    1. Перейдите в раздел Тесты.

    2. Выберите тест. ID теста отображается в адресной строке: testId

  • testVersionId. ID версии теста. Если параметр не указан, запустится последняя версия теста. Чтобы узнать ID версии теста:

    1. Перейдите в раздел Запуски.

    2. Выберите запуск теста.

    3. Нажмите на кнопку Тест. ID версии теста отображается в адресной строке: testVersionId

  • testMode. Режим запуска теста. Возможные значения:

    • TEST. Обычный тест;

    • DEBUG_TEST. Отладочный тест.

  • inheritLabelsFromTest. Если true, метки скопируются из теста в запуск теста.

См.также

Получение результатов SLA#

Чтобы получить результаты SLA теста, выполните команду:

curl --location --request GET 'https://{BASE_URL}/public-api/v1/testRun/sla?testRunId=304' \
--header 'api-token: <Ваш API токен>'

Параметр запроса:

  • testRunId. ID запуска теста. Чтобы узнать ID запуска теста, воспользуйтесь одним из способов:

    • выполните запрос для запуска теста. ID содержится в ответе в свойстве id;

    • найдите в адресной строке:

      1. Перейдите в раздел Запуски.

      2. Выберите запуск теста. ID запуска теста отображается в адресной строке: testRunId

Параметр заголовка:

Тесты и версии#

Создание версии теста#

Чтобы создать версию теста с новыми параметрами, выполните команду:

curl --request POST \
--url https://{BASE_URL}/public-api/v1/testVersion \
--header 'Content-Type: application/json' \
--header 'api-token: <Ваш API токен>' \
--data '{
  "id": 3,
  "versionId": 47,
  "updateFileList": [
    {
      "filename": "login.csv",
      "newFileName": "login_v2.csv",
      "location": "teams/3/uploaded_files/file_4f132253-b2c2-4c9a-b5f3-816d637cb57.csv"
    }
   ],
   "variableList": [
    {
      "name": "host",
      "value": "https://example.com/",
      "description": "string"
    }
   ],
   "comment": "string"
   }'

Параметр заголовка:

Тело запроса:

  • id. ID теста;

  • versionId. ID версии теста. Если параметр не указан, то используется последняя версия теста;

  • updateFileList.filename. Имя предыдущего CSV-файла;

  • updateFileList.newFileName. Имя нового CSV-файла;

  • updateFileList.location. Путь к CSV-файлу в хранилище платформы. Вставьте значение свойства location из ответа на запрос для загрузки CSV-файла;

  • variableList.name. Название параметра. Оно должно совпадать с именем параметра в тесте;

  • variableList.value. Новое значение параметра;

  • variableList.description. Описание параметра;

  • comment. Комментарий к версии теста.

См.также

Создание теста на основе скрипта JMeter#

Чтобы создать тест на основе скрипта JMeter, выполните команду:

curl --request POST \
--url 'https://{BASE_URL}/public-api/v1/test/jmx?testName=JMX-test&comment=Add%20timer' \
--header 'Content-Type: multipart/form-data' \
--header 'api-token: <Ваш API токен>' \
--form 'jmx=@/home/csv/csv.jmx' \
--form 'file=@/home/csv/params.csv'

Параметры запроса:

  • testName. Имя нового теста;

  • comment. Комментарий к версии теста.

Параметр заголовка:

Тело запроса:

  • jmx. Путь к JMX-файлу;

  • file. Путь к сопутствующим файлам, которые использует скрипт.

Получение списка тестов#

Чтобы получить список тестов команды, выполните команду:

curl --request GET \
--url 'https://{BASE_URL}/public-api/v1/test?page=0&size=2&sort=name%2Cdesc' \
--header 'api-token: <Ваш API токен>'

Параметры запроса:

  • page. Номер начальной страницы. Минимальное значение – 0;

  • size. Размер страницы – количество тестов на одной странице. Возможные значения от 1 до 10;

  • sort. Настройки сортировки определяют:

    • поле, по которому сортируются элементы. Возможные значения полей: id, name, lastModified, labelSet;

    • направление сортировки. Возможные значения: asc – сортировка по возрастанию, desc – сортировка по убыванию. Чтобы задать направление, к имени поля добавьте запятую %2C и asc или desc.

Параметр заголовка:

Файлы и настройки#

Обновление CSV-параметра в наборе настроек#

Чтобы обновить CSV-параметр в наборе настроек:

  1. Загрузите CSV-файл в хранилище:

    curl --request POST \
    --url https://{BASE_URL}/public-api/v1/file \
    --header 'Content-Type: multipart/form-data' \
    --header 'api-token: <Ваш API токен>' \
    --form 'files=@/home/csv/params.csv'
    

    Параметр заголовка:

    Параметр тела запроса:

    • files. Путь к CSV-файлу.

  2. Из ответа на запрос скопируйте значение свойства location — путь к CSV-файлу в хранилище платформы.

    Пример ответа на запрос:

    [
      {
        "originalFileName": "params.csv",
        "location": "teams/3/uploaded_files/file_4f132253-b2c2-4c9a-b5f3-816d637cb57d.csv"
      }
    ]
    
  3. Обновите CSV-параметр в наборе настроек. Используйте скопированное значение свойства location в ответе:

    curl --request PUT \
    --url https://{BASE_URL}/public-api/v1/testSetting \
    --header 'Content-Type: application/json' \
    --header 'api-token: <Ваш API токен>' \
    --data '{
       "settingsId": 2,
       "updateFileList": [
          {
             "filename": "login.csv",
             "newFileName": "login_v2.csv",
             "location": "teams/3/uploaded_files/file_4f132253-b2c2-4c9a-b5f3-816d637cb57.csv"
          }
          ],
       }'
    

    Параметр заголовка:

    Тело запроса:

    • settingsId. ID набора настроек. Чтобы узнать ID набора настроек:

      1. Перейдите в раздел Тесты и откройте вкладку Настройки.

      2. Откройте набор настроек. ID набора настроек отображается в адресной строке: settingsId

    • updateFileList.filename. Имя предыдущего CSV-файла;

    • updateFileList.newFileName. Имя нового CSV-файла;

    • updateFileList.location. Путь к CSV-файлу в хранилище платформы. Вставьте значение свойства location из ответа на запрос для загрузки CSV-файла.

Обновление литерального параметра в наборе настроек#

Чтобы обновить литеральный параметр в наборе настроек, выполните команду:

curl --request PUT \
   --url https://{BASE_URL}/public-api/v1/testSetting \
   --header 'Content-Type: application/json' \
   --header 'api-token: <Ваш API токен>' \
   --data '{
      "settingsId": 2,
      "variableList": [
         {
            "name": "host",
            "value": "https://ecommerce.pflb.us/",
            "description": "string"
         }
         ]
      }'

Параметр заголовка:

Тело запроса:

  • settingsId. ID набора настроек. Чтобы узнать ID набора настроек:

    1. Перейдите в раздел Тесты и откройте вкладку Настройки.

    2. Откройте набор настроек. ID набора настроек отображается в адресной строке: settingsId

  • variableList.name. Название параметра. Оно должно совпадать с именем параметра в наборе настроек;

  • variableList.value. Новое значение параметра;

  • variableList.description. Описание параметра.

Обновление сопутствующих файлов для JMX-тестов#

Чтобы обновить сопутствующие файлы для тестов на основе скриптов JMeter:

  1. Загрузите файл в хранилище:

    curl --request POST \
    --url https://{BASE_URL}/public-api/v1/file \
    --header 'Content-Type: multipart/form-data' \
    --header 'api-token: <Ваш API токен>' \
    --form 'files=@/home/test/data.txt'
    

    Параметр заголовка:

    Параметр тела запроса:

    • files. Путь к файлу.

  2. Из ответа на запрос скопируйте значение свойства location — путь к файлу в хранилище платформы.

    Пример ответа на запрос:

    [
      {
        "originalFileName": "data.txt",
        "location": "teams/3/uploaded_files/file_4f132253-b2c2-4c9a-b5f3-816d637cb57d.txt"
      }
    ]
    
  3. Создайте версию JMX-теста с новым сопутствующим файлом:

    curl --request POST \
    --url https://{BASE_URL}/public-api/v1/testVersion \
    --header 'Content-Type: application/json' \
    --header 'api-token: <Ваш API токен>' \
    --data '{
      "id": 3,
      "versionId": 47,
      "updateFileList": [
        {
          "filename": "data.txt",
          "newFileName": "data_v2.txt",
          "location": "teams/3/uploaded_files/file_4f132253-b2c2-4c9a-b5f3-816d637cb57.txt"
        }
       ],
       "comment": "string"
       }'
    

    Параметр заголовка:

    Тело запроса:

    • id. ID теста;

    • versionId. ID версии теста. Если параметр не указан, то используется последняя версия теста;

    • updateFileList.filename. Имя предыдущего сопутствующего файла;

    • updateFileList.newFileName. Имя нового сопутствующего файла;

    • updateFileList.location. Путь к файлу в хранилище платформы. Вставьте значение свойства location из ответа на запрос для загрузки файла;

    • comment. Комментарий к версии теста.

См.также