Как добавить параметры в url-адрес как часть пути в запросе SOAP UI REST?

Я создаю тестовый случай для REST API в soapUI 4.5, где я собираюсь использовать контент с шага X, чтобы сделать новый вызов в шаге Y.

В идеале я бы создал запрос REST с некоторыми параметрами, скажем A и B, и сказал, что эти параметры должны использоваться в URL: http://myapi.com/v1/stuff/A/B

затем я бы сделал шаг передачи свойств и просто установил значения, извлеченные из шага X в A и B.

похоже, что soapUI только позволяет мне создайте параметры querystring, например: http://myapi.com/v1/stuff?ParamA=A&ParamB=B

это работает, конечно, но я хотел бы иметь возможность называть это в обоих направлениях, чтобы убедиться, что они оба работают.

Я что-то пропустила?

1 ответов


Я никоим образом не эксперт soapui, но только что проработал очень похожий сценарий, так что это может помочь вам.

Часть 1: Создание параматизированного ресурса
В моем сервисе у меня есть ресурс под названием stuff:

http://{host}/stuff

Я создаю дочерний ресурс со следующими значениями:

    Resource Name: Get stuff by ID
    Resource Path/Endpoint: {stuffId}

и, прежде чем нажать ok, нажмите Extract Params - это заполнит таблицу параметров записью например:

    Name     | Default value | Style      | Location
    stuffId  | stuffId       | TEMPLATE   | RESOURCE

затем нажмите ok. Теперь у вас есть ресурс, который позволяет динамически предоставить код:

http://{host}/stuff/{id}

вам нужно будет повторить это, чтобы создать параметр B выше (или вы можете создать A и B как два параметра для одного ресурса, если вы никогда не вызываете /stuff/a Без также предоставления B).

Часть 2: создание тестового набора
Теперь в тестовом случае вам нужно получить a, передать свойство, а затем отправить запрос вышеуказанный ресурс, используя свойство:

  1. в тестовом случае, создайте запрос для получения ответа, содержащего
  2. щелкните правой кнопкой мыши testcase и добавьте шаг свойств. Добавить свойство для хранения значения А.
  3. в ответе в представлении контура щелкните правой кнопкой мыши значение A и выберите "перенести в > свойство", выберите только что созданное свойство и нажмите ok
  4. создайте новый запрос, используя новый paramatized ресурс создан в первой части. Вместо идентификатора поместите ссылку на свойство, которое содержит значение A в этом формате:

    ${propertyName}
    

я, возможно, сделал что-то неправильно, но мой тест изначально терпит неудачу при передаче свойства с "отсутствующим исходным свойством". В источнике есть шаг PropertyTransfer, мне нужно было установить свойство ResponseAsXml

надеюсь, что это помогает!