Как отправить sessionID из soapui в виде запроса

Я тестирую метод веб-сервиса, который принимает идентификатор сеанса в качестве параметра.

При тестировании того же метода через SoapUI с фиктивным параметром sessionID сервер отклоняет запрос, поскольку ожидает правильного идентификатора сеанса.

Как я могу это решить? Есть ли способ, с помощью которого SoapUI может связать идентификатор сеанса перед отправкой запроса?

Пожалуйста, посоветуйте мне. Спасибо

Ниже приведен пример запроса, который запускается из SOAP-UI:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://services.local.com">
   <soapenv:Header/>
   <soapenv:Body>
      <ser:getMultiple>
         <!--Optional:-->
         <ser:sessionId>1000AJHEFG0987</ser:sessionId>
         <!--Optional:-->
         <ser:lessonId>95101</ser:lessonId>
         <!--Optional:-->
         <ser:quantity>1</ser:quantity>
         <!--Optional:-->
         <ser:impressionRow>1</ser:impressionRow>
      </ser:getParametersMultiple>
   </soapenv:Body>
</soapenv:Envelope>

person Arun    schedule 20.03.2012    source источник
comment
Итак, что представляет собой действительный идентификатор сеанса?   -  person Chris Thornton    schedule 20.03.2012
comment
Не уверен, Крис. Они проверяют ID входящей сессии по-своему. Но одно можно сказать наверняка: если мы отправим фиктивный идентификатор сеанса, сервис выйдет из строя. Поэтому нужно проверить, как захватить идентификатор сеанса, а затем отправить его в запросе из soap-ui.   -  person Arun    schedule 21.03.2012
comment
Для наших веб-сервисов у нас есть отдельный метод входа или аутентификации, который создает и возвращает новый идентификатор сеанса. Существуют ли какие-либо другие методы интерфейса, который вы вызываете?   -  person Per Åkerberg    schedule 21.03.2012
comment
В нашем сервисе такого метода нет. Как и в реальности, вход в систему будет осуществляться со стороны флэш-памяти, а идентификатор сеанса будет поступать из скриптов флэш-памяти. Но вот проверяю сервисы с помощью soap-ui   -  person Arun    schedule 21.03.2012
comment
Хорошо... так как же флэш-скрипт получает идентификатор сеанса? Где лежит логика создания идентификатора сеанса? Можно ли извлечь эту логику? Я ничего не знаю о флэш-скриптах, но есть ли в этом скрипте логика для сессий?   -  person Per Åkerberg    schedule 22.03.2012
comment
Должна быть какая-то логика, я думаю, они получают идентификатор сеанса из файла cookie браузера !!   -  person Arun    schedule 23.03.2012


Ответы (2)


Скажем, если вы получаете sessionid в ответе на первый запрос, а следующий запрос должен идти сюда http://{{original endpoint}}/{{SESSION_ID}}), это определенно работает:

  1. перейти к запросу (а не к тестовому запросу внутри тестового примера), где идентификатор сеанса должен быть помещен в
  2. добавить параметр на вкладку "запрос"
  3. name=sessionid, style=template, level=resource. теперь он пуст во всех связанных тестовых запросах
  4. перейти к тестовому запросу, вкладка «запрос»
  5. поместите путь к значению sessionid из предыдущего запроса в поле «значение» параметра sessionid. например, это похоже на ${users#Response#$.session_id}, где «пользователи» — это имя ресурса конечной точки, «session_id» — это имя параметра внутри ответа.
person Yuri Sychenko    schedule 23.11.2017

Решение найдено,

  • Разработайте свой метод входа в систему, который будет принимать определенные входные данные и возвращать идентификатор сеанса в виде строки.

  • Нажмите этот метод входа в систему из SOAP-UI, и вы получите идентификатор сеанса в своем ответе.

  • Используйте опцию «Передача свойства» в soap-ui и передайте полученный идентификатор сеанса всем другим запросам.

Полезная ссылка: soapui. org/Functional-Testing/transferring-property-values.html

Простой !! :)

person Arun    schedule 03.05.2012
comment
Где этот вариант передачи собственности? - person Svish; 05.09.2013
comment
Пожалуйста, Google для этого. Эта ссылка может быть вам полезна soapui.org/Functional-Testing/transferring -property-values.html - person Arun; 05.09.2013