我不确定为什么替换不起作用。
我有一个 graphql 查询:
mutation updateLocation{
updateLocation(input: {
address:"<address>",
id:"<storeID>",
name:"<name>",
workingHours: [
{
closingTime:"<closingTime>",
isClosed:false,
openingTime:"<openingTime>"
}
.......
在功能文件中我有这个:
Given def query = read ('classpath:graphQL/updateStore.graphql')
* replace query.address = "<address>"
* replace query.regionId = "<regionId>"
* replace query.name = "<name>"
* replace query.closingTime = "<closingTime>"
* replace query.openingTime = "<openingTime>"
* replace query.storeID = storeId
And request { query : '#(query)'}
When method post
Then status 200
Examples:
|address |regionId |name |closingTime |openingTime |
|Adrs1 |286 |st1 |20:00 |10:00 |
替换适用于地址、区域 ID 和名称,但不适用于关闭时间或开放时间,这两个值保持为空。
另外,如果我在后台定义标题,如下所示:
Given header Authorization = 'Bearer ' + token
我仍然需要在同一场景中为每个请求添加这一行,或者我遗漏了一些东西?
对我有用:
* def query = 'closingTime:"<closingTime>"'
* replace query.closingTime = '20:00'
* match query == 'closingTime:"20:00"'
所以请遵循以下流程:https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue
注意* replace query.closingTime = closingTime
应该管用。我建议使用不同的名称来避免混淆Examples
列。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)