如果示例的列过多,则每一行都将太长而无法阅读!
Feature:
Background:
Scenario Outline:
* match '<msg>' == <prefix> + ',' + '<end>'
Examples:
| prefix | end | msg |
| hello | mike | hello,mike |
| hello | jerry | hello,jerry |
会不会是这样:
Feature:
Background:
Examples:
| prefix |
| hello |
Scenario Outline:
* match '<msg>' == <prefix> + ',' + '<end>'
Examples:
| end | msg |
| mike | hello,mike |
| jerry | hello,jerry |
我想将示例分成几部分,或者在Outline之前设置基础示例。我应该怎么做?
答案 0 :(得分:1)
空手道在最新版本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.karate将所有这些table
,Examples:
视为JSON的数组
通常您在上面的示例将表示为
[
{
"prefix": "hello",
"end": "mike",
"msg": "hello,mike"
},
{
"prefix": "hello",
"end": "jerry",
"msg": "hello,jerry"
}
]
因此,空手道允许您使用空手道的dynamic scenario outline feature
从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数组的形式提供数据。