каратэ обращается к этому различными способами в своих последних версиях 0.9.X
, давайте посмотрим
- Как вы и просили, мы можем определить
Examples:
таблицы до Scenario Outline:
, используя таблицу в каратэ,
Feature: my feature
Background: BG
* table myExample
| prefix | end | msg |
| 'hello' | 'mike' | 'hello,mike' |
| 'hello' | 'jerry' | 'hello,jerry' |
Scenario Outline: SOW
* match '<msg>' == '<prefix>' + ',' + '<end>'
Examples:
| myExample |
то же самое можно сохранить в другом файле функций и прочитать его в этом файле функций, но не усложняйте, так как у нас есть некоторые другие решения, представленные ниже.
2.каратэ видит все эти table
, Examples:
как массив JSON
как правило, ваш пример выше будет представлен как
[
{
"prefix": "hello",
"end": "mike",
"msg": "hello,mike"
},
{
"prefix": "hello",
"end": "jerry",
"msg": "hello,jerry"
}
]
, поэтому каратэ позволяет вам определять эти Examples
также из JSON
или csv
форматов, используя динамическую схему набросков карате
если вы чувствуете, что примеры слишком велики для размещения в вашем файле функций, сохраните его в файле csv
и прочитайте его в Examples
Feature: my feature
Background: BG
* def myExample = read("myExample.csv")
Scenario Outline: SOW
* match '<msg>' == '<prefix>' + ',' + '<end>'
Examples:
| myExample |
То же самое относится и к JSON, предоставляя данные в виде массива JSON.