我将如何在单独的.feature文件中使用表格在多个.feature文件中使用多个场景大纲?我正在努力只在一个地方更新我的测试数据,并带来所有的好处 .
我目前有一个 Scenario Outline
,带有一个简单的 Examples
表,如下所示:
Given path 'GetIds'
* header Authorization = auth
* request { Id: <Id> }
* method post
* status 200
Examples:
| Id |
| 'a' |
| 'b' |
查看Karate - Possible to put scenario in a loop?结果中的链接似乎就像我应该看的那样,但我无法推断我的Examples.feature文件应该是什么样子 .
编辑:下面的黄瓜示例对我来说非常清楚(公然从Cucumber: Scenario Outline reusing examples table被盗)
Examples:{'datafile':'resources/testdata.txt'}
但在空手道中显然是无效的 .
Edit2:创建一个单独的ids.json文件并通过 * def ids = read('ids.json')
读取它 . 像这样使用它:
Feature: Dummy
Background:
* def ids = read('ids.json')
Scenario: GetIds
* print ids
* print ids.id
* match each ids contains { id: #string }
上面将以json格式给出来自旧 Examples
表的数据 . 但我没有得到 * print ids.id
上的每个id输出,我没有看到GetIds场景执行多次 . 我期望它为ids.json中的json数组中的每个对象执行,如https://github.com/intuit/karate#data-driven-features中所述
1 回答
问题是你根本不会使用
Scenario Outline
或Examples
. 作为JSON数组循环测试数据的"Karate Way"在以下方面有所不同:所以我要做的是:
并在
called.feature
: