查询参数的默认值
Default values for query parameters
如果我的问题没有意义,请原谅我。
我想做的是为查询参数注入值
GET1 File
Scenario:
Given path 'search'
And param filter[id] = id (default value or variable from another feature file)
POST1 File
Scenario:
def newid = new id made by a post call
def checkid = read call(GET1) {id : newid}
比如如果我的一个功能文件创建了一个新的 id,那么我想对上述场景进行 get 调用。因此我需要一个接受新 ID 的参数。
另一方面,如果我没有新创建的 ID,或者创建它的测试不属于套件。我希望仍然能够 运行 上面提到的场景,但这次它有一个默认值。
使用 params
而不是 param
。它被设计为忽略任何具有空值的键。
下面第一行设置null
后,可以对其他特征做call
,覆盖criteria
的值。如果仍然是null
,则不会设置任何参数。
* def criteria = null
Given path 'search'
And params { filter: '#(criteria)' }
还有多种其他方法可以做到这一点,也可以参考这组数据驱动搜索参数的示例:dynamic-params.feature
conditional logic 上的文档也可能会给您一些想法。
如果我的问题没有意义,请原谅我。
我想做的是为查询参数注入值
GET1 File
Scenario:
Given path 'search'
And param filter[id] = id (default value or variable from another feature file)
POST1 File
Scenario:
def newid = new id made by a post call
def checkid = read call(GET1) {id : newid}
比如如果我的一个功能文件创建了一个新的 id,那么我想对上述场景进行 get 调用。因此我需要一个接受新 ID 的参数。
另一方面,如果我没有新创建的 ID,或者创建它的测试不属于套件。我希望仍然能够 运行 上面提到的场景,但这次它有一个默认值。
使用 params
而不是 param
。它被设计为忽略任何具有空值的键。
下面第一行设置null
后,可以对其他特征做call
,覆盖criteria
的值。如果仍然是null
,则不会设置任何参数。
* def criteria = null
Given path 'search'
And params { filter: '#(criteria)' }
还有多种其他方法可以做到这一点,也可以参考这组数据驱动搜索参数的示例:dynamic-params.feature
conditional logic 上的文档也可能会给您一些想法。