Иногда требуется извлечь какое-то значение из ответного сообщения и включить его в последующий запрос (ы). В таком случае у нас должен быть механизм для извлечения указанного значения и передачи его другим элементам проекта. SoapUI поддерживает такую функциональность с помощью Property Transfer TestStep.
Добавление передачи собственности
Шаг 1 — Выберите TestCase или TestStep, щелкните правой кнопкой мыши → Добавить шаги → Передача свойства.
Шаг 2 — Введите имя TestStep и нажмите OK.
Шаг 3 — Шаг RateTransfer добавлен, и откроется новый мастер.
Шаг 4 — Нажмите значок Добавить новую передачу свойства + в левом верхнем углу окна передачи свойства. Будет предложено ввести имя для передачи. Введите оценку и нажмите ОК.
Передача недвижимости
После того как передача создана, на панелях «Источник» и « Цель» необходимо указать соответствующие выражения XPath для извлечения и замены значений свойств. В раскрывающемся списке рядом с «Источником» перечислены различные уровни проектов SoapUI, которые можно использовать в качестве источника передачи свойств. По умолчанию будет показан ближайший TestStep.
В данном случае это запрос — INR в USD TestStep. В раскрывающемся списке рядом со свойством отображается свойство источника, которое используется при передаче, которое может быть либо запросом, ответом, либо конечной точкой службы.
Шаг 1 — Выберите Ответ и перейдите к языку пути. Пользователь может выбрать XPath, Xquery или Jason для определения свойства. В этом случае выберите XPath.
Шаг 2 — Чтобы получить объявление исходного XML, нажмите ns и укажите XPath.
Шаг 3 — Укажите цель, куда должно быть передано значение, извлеченное из приведенного выше выражения XPath. Целевая панель используется для этого в нижней части окна передачи свойств.
Шаг 4 — Передать извлеченное значение ConversionRateResult из ответа шага RequestINRtoUSD.
Цель — Свойства
Свойство — ConversionRate (добавлено новое свойство, изначально оно не имеет значения).
Шаг 5. После успешного выполнения тестового примера свойство ConversionRate обновляется на основе ответа.
Ниже приведен скриншот изначально.
Ниже приведен скриншот после успешного запуска.
Аналогично, Target может быть следующим XML-запросом. Если Target является SOAP-запросом, нам нужно предоставить XPath для идентификации целевого атрибута.