空手道:替换多个键值
Karate: Replacing multiple key values
我有以下回复,我正在尝试更换图标-url 的一部分,即将 test.com 更换为 prod.com。
[
{
"_": {
"name": "FA",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "00"
}
},
{
"_": {
"name": "DA",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "0D"
}
},
{
"_": {
"name": "JC",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "0J"
}
},
{
"_": {
"name": "AG",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "1A"
}
},
{
"_": {
"name": "AI",
"icon-url": "https://test.com/static/images/airline/partner.png"
},
"@": {
"code": "1B"
}
}]
我尝试使用以下功能,但这不起作用:
* def iconurl = 'prod.com'
* def replaceEnv = function(x){ if (x['icon-url']) x['icon-url'] = x['icon-url'].replace('test.com', iconurl); return x }
* def convertedExpectation = karate.map(result, replaceEnv) // result refers to the response above
请看一下代码并指导我代码中的错误。
给你,注意 x._['icon-url']
与 x['_']['icon-url']
相同
* def fun = function(x){ var temp = x._['icon-url']; x._['icon-url'] = temp.replace('test.com', 'prod.com'); return x }
我有以下回复,我正在尝试更换图标-url 的一部分,即将 test.com 更换为 prod.com。
[
{
"_": {
"name": "FA",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "00"
}
},
{
"_": {
"name": "DA",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "0D"
}
},
{
"_": {
"name": "JC",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "0J"
}
},
{
"_": {
"name": "AG",
"icon-url": "https://test.com/static/images/air/partner.png"
},
"@": {
"code": "1A"
}
},
{
"_": {
"name": "AI",
"icon-url": "https://test.com/static/images/airline/partner.png"
},
"@": {
"code": "1B"
}
}]
我尝试使用以下功能,但这不起作用:
* def iconurl = 'prod.com'
* def replaceEnv = function(x){ if (x['icon-url']) x['icon-url'] = x['icon-url'].replace('test.com', iconurl); return x }
* def convertedExpectation = karate.map(result, replaceEnv) // result refers to the response above
请看一下代码并指导我代码中的错误。
给你,注意 x._['icon-url']
与 x['_']['icon-url']
* def fun = function(x){ var temp = x._['icon-url']; x._['icon-url'] = temp.replace('test.com', 'prod.com'); return x }