Перейти к содержимому

Фотография

SoapUI вставка xml фрагмента в request


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 tab15

tab15

    Активный участник

  • Members
  • PipPip
  • 128 сообщений

Отправлено 26 июня 2011 - 20:36

Здравствуйте.

Недавно начал работать с SoapUI. Появилась следующая проблема. Есть таблица данных (не важно excel, db). Например
title  | author
Назв.1 | Автор1
Назв.2 | Автор2

Необходимо в готовый запрос вставить xml-код с этими данными, что то вроде
...
<library>
  <book>
    <title>Назв.1</title>
    <author>Автор1</author>
  </book>
  <book>
    <title>Назв.2</title>
    <author>Автор2</author>
  </book>
</library>
...

Т.е. у меня в запросе для каждой книги есть свой тег <book/> с вложенной структурой данных. Нужно достать названия авторов и книг из таблицы и разместить в запрос.

Спасибо за помощь.
  • 0

#2 rlabs

rlabs

    Специалист

  • Members
  • PipPipPipPipPip
  • 660 сообщений
  • Город:Россия, Санкт-Петербург

Отправлено 26 июня 2011 - 22:11

Если это действительно необходимо, то делается через Data Source step в Pro-версии или Groovy Script step в обычной.
  • 0

#3 tab15

tab15

    Активный участник

  • Members
  • PipPip
  • 128 сообщений

Отправлено 27 июня 2011 - 05:00

rlabs, спасибо за ответ, но только на сколько я понимаю Data Source будет делать несколько итераций. В моем примере 1-я итерация (1й реквест) пошлет
<title>Назв.1</title>
<author>Автор1</author>
вторая
<title>Назв.2</title>
<author>Автор2</author>
Мне же нужно послать все данные в один шаг.

А вот насчет Груви степ, можно по подробнее в каком направлении смотреть в написании скрипта?
  • 0

#4 tab15

tab15

    Активный участник

  • Members
  • PipPip
  • 128 сообщений

Отправлено 02 июля 2011 - 16:00

Друзья, вопрос все еще актуален!
  • 0

#5 tab15

tab15

    Активный участник

  • Members
  • PipPip
  • 128 сообщений

Отправлено 07 июля 2011 - 08:11

В общем справился сам. Возможно коряво, но вроде работает.

Кому интересно вот шаги:
- DataSource в котором извлекаем данные из БД
- Groovy Script тут создаем временный файл в который записываем/добавляем строку с xml данными, которые мы и хотим
- DataSource Loop для того что бы пройтись по всем строкам, полученным из БД
- DataSource получаем данные из временного файла
- Test Request просто вставляем данные из предыдущего шага в реквест
- В конце удаляем временный файл - записываем скрипт в раздел TearDown Script ТестКейса
  • 0

#6 deboro

deboro

    Новый участник

  • Members
  • Pip
  • 3 сообщений
  • ФИО:Никонов Иван

Отправлено 01 августа 2013 - 06:29

В общем справился сам. Возможно коряво, но вроде работает.

Кому интересно вот шаги:
- DataSource в котором извлекаем данные из БД
- Groovy Script тут создаем временный файл в который записываем/добавляем строку с xml данными, которые мы и хотим
- DataSource Loop для того что бы пройтись по всем строкам, полученным из БД
- DataSource получаем данные из временного файла
- Test Request просто вставляем данные из предыдущего шага в реквест
- В конце удаляем временный файл - записываем скрипт в раздел TearDown Script ТестКейса



А можно пример скрипта?
  • 0

#7 tab15

tab15

    Активный участник

  • Members
  • PipPip
  • 128 сообщений

Отправлено 05 августа 2013 - 10:46

А можно пример скрипта?

К сожалению, уже этого скрипта нет.
Но там ничего особенного не было, просто запись строки в файл.
по типу
    def str = '<library> <book>  <title>Назв.1</title>   <author>Автор1</author> </book> <book>  <title>Назв.2</title>  <author>Автор2</author> </book> </library>'	
    def dataFile = new File('c:/temp/1.txt')
    dataFile << str

  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных