FitNesse: Требуется ли писать приборы для добавления и использования переменных на тестовой странице?

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

Я использую xmlHtttp тесты для веб-служб SOAP и fhoeben/hsac-fitnesse-fixtures (тонкий) для этого.

Требуется ли писать отдельные светильники для добавления таблицы?


person botguide    schedule 10.03.2016    source источник
comment
например, у меня есть переменная с именем login в моем XML-файле, и мне нужно получить ее значение в ответном XML-файле, как я могу определить это в фитнесе?   -  person botguide    schedule 10.03.2016
comment
Извините, но я не понимаю того, что вы ищете. Не могли бы вы привести более подробный пример переменных и таблиц сценариев, в которых вы хотели бы их использовать?   -  person Fried Hoeben    schedule 10.03.2016
comment
Спасибо. Пример: у меня есть файл запроса xml с узлами ‹ns1: имя пользователя› bob ‹/ ns1: имя пользователя› ‹ns2: accountNo› 4345345623 ‹/ ns2: accountNo›. Вместо того, чтобы указывать значения, мне нужно указать следующие переменные: ‹ns1: имя входа› $ logname ‹/ ns1: имя входа› ‹ns2: accountNo› $ accno ‹/ ns2: accountNo›. И затем мне нужно определить точные значения для них переменных в таблицах в фитнес-вики, чтобы фитнес-вики мог брать эти переменные и значения из таблицы и использовать эти значения для всех тестовых страниц, чтобы проверить, мы получаем правильный ответный XML-файл.   -  person botguide    schedule 11.03.2016
comment
т.е. в | показать | запрос | у нас есть xml файл со значениями. Но у нас может быть таблица пар "ключ-значение" в вики по пригодности. И | показать | ответ | может дать правильный ответ в XML-файл, соответствующий запросу в XML-файл. Надеюсь, это проясняет. Спасибо   -  person botguide    schedule 11.03.2016
comment
Измените свой вопрос, чтобы он содержал эту информацию. Затем вы можете использовать форматирование, чтобы сделать его более понятным. Мне пока не ясно, как переменные используются в ответе. Они используются в запросе, и затем тестируемая система возвращает ответ. Этот ответ генерируется тестируемой службой, а не FitNesse, верно? Вы видели fhoeben.github.io / hsac-fitnesse-fixtures / examples-results /, где zip - это входная переменная (а их может быть больше)?   -  person Fried Hoeben    schedule 11.03.2016
comment
Мне очень жаль, что мое описание не так ясно. я могу попытаться прояснить это. Если мы рассмотрим сам этот xml, ‹s11: Envelope xmlns: s11 = schemas.xmlsoap.org/soap/ конверт ›‹ s11: Body ›‹ ns1: GetCityWeatherByZIP xmlns: ns1 = ws.cdyne.com/ WeatherWS ›‹ ns1: ZIP ›10007‹ / ns1: ZIP ›‹ / ns1: GetCityWeatherByZIP ›‹ / s11: Body ›‹ / s11: Envelope ›. Можно ли вместо 1007 использовать переменную? Спасибо   -  person botguide    schedule 11.03.2016


Ответы (1)


Да, ты можешь.

Using a scenario allows us to generate multiple request, only changing certain values.

!*> Scenario definition
!define POST_BODY_2 { {{{
<s11:Envelope xmlns:s11="http://schemas.xmlsoap.org/soap/envelope/">
  <s11:Body>
    <ns1:GetCityWeatherByZIP xmlns:ns1="http://ws.cdyne.com/WeatherWS/">
      <ns1:ZIP>@{zip}</ns1:ZIP>
    </ns1:GetCityWeatherByZIP>
  </s11:Body>
</s11:Envelope>
}}} }

|script|xml http test|

|table template |send request                                                |
|post           |${POST_BODY_2} |to           |${URL}                        |
|check          |response status|200                                         |
|show           |response                                                    |
|register prefix|weather        |for namespace|http://ws.cdyne.com/WeatherWS/|
|$City=         |xPath          |//weather:City/text()                       |
*!

|send request       |
|zip  |City?        |
|10007|New York     |
|94102|San Francisco|

В этом примере используется переменная zip, поэтому запрос отправляется либо с 10007, либо с 94102.

person Fried Hoeben    schedule 11.03.2016