Тестирование сценария с несколькими данными ввода / вывода в BDD (Squish)/ Тестирование на основе данных в формате BDD
Ниже приведен пример проекта, над которым я работаю.
Сценарий: приложение Adder для тестирования в BDD.
Данное приложение Adder выполняется, когда заданы два входных значения, в соответствии с которыми мы получаем вывод. Затем проверьте поле вывода.
Я в состоянии выполнить тест с набором из 2 входных значений.
Можно ли выполнить один и тот же сценарий с другим набором входных значений.
2 ответа
Да, это возможно. Решение называется Scenario Outline
Fe
Scenario Outline: Adder application to be tested in BDD.
Given Adder application is running
When <input_values> are given corresponding to which we get an output.
Then Validate the <output> field.
Examples:
| input_values | output |
| foo | bar |
| new foo | new bar |
Для получения дополнительной информации проверьте ссылку документации.
Если вы хотите это для каждого сценария, используйте хук OnScenarioStart...
Вы также можете сделать это без схемы сценария, используя данные таблицы:
Scenario: Adder application to be tested in BDD.
Given Adder application is running
Then for each input value provided, verify the output value.
| inputvalue | outputvalue |
| foo | bar |
| new foo | new bar |
Вы получаете доступ к таблице на своем шаге, используя объект context.table
Then("for each input value provided, verify the output value", function(context) {
var table = context.table;
// Skip initial row with column headers by starting at index 1
for (var i = 1; i < table.length; ++i) {
var inputValue = table[i][0];
var outputValue = table[i][1];
// make magic happen
}
});