В тесте набросков сценария каратэ, как передать значения параметров в таблице примеров через переменную - PullRequest
1 голос
/ 30 июня 2019

Я использую тот же набор данных в большинстве моих запросов API, например. диапазоны дат FromDate & ToDate. Однако, если я хочу изменить диапазон дат, мне придется изменить его для всех контуров сценария. Чтобы избежать этого, могу ли я определить диапазоны дат в фоновом разделе и использовать имя переменной во всех таблицах примеров сценариев сценария? Можно ли это сделать в каратэ? Пожалуйста помоги. Спасибо.

Пробовал много способов, но не смог вытащить, если как-то.

Добавление: убедитесь, что продукты правильно возвращены API Фон: * настроить ssl = true * url 'https: // ......' И def FromDate1 = '2019/06/27' И def ToDate1 = '2019/06/27'

Scenario Outline:
Given path 'GetContext'
And param FromDate = '<FromDate>'
And param ToDate = '<ToDate>'
And param CompAreaId = '<CompAreaId>'
And param RegId = '<RegId>'
When method get
Then status 200
* def res = response
* print 'response:', response

  Examples:
    | FromDate       | ToDate      | CompAreaId       | RegId    |
    | FromDate1      | 2019/06/27  | 20               | 4        |
    | 2019/06/28     | 2019/06/28  | 21               | 5        |
    | 2019/06/29     | 2019/06/29  | 22               | 6        |

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

1 Ответ

1 голос
/ 30 июня 2019

Да, конечно.Поскольку то, что определено как нормальная переменная, еще проще в использовании, вы обращаетесь к ней напрямую, вместо добавления угловых скобок.

Вам необходимо внести это небольшое изменение:

And param FromDate = FromDate1
And param ToDate = ToDate1

Примечаниечто в версии 0.9.3 и далее эта ошибка устранена, вам больше не нужны угловые скобки даже для Scenario Outline.Пожалуйста, прочитайте: https://github.com/intuit/karate#scenario-outline-enhancements

...