可以在JavaScript函数中使用类似smth的JsonPath来浏览json吗?
这是我的测试:可以在JavaScript函数中使用类似smth的JsonPath来浏览json吗?,json,karate,Json,Karate,这是我的测试: Background: * url serverUrl * configure headers = read('classpath:headers.js') * def getId = function(){ return java.util.UUID.randomUUID() + '' } Scenario: Create lead * def req = read('classpath:data/leads.json') *
Background:
* url serverUrl
* configure headers = read('classpath:headers.js')
* def getId = function(){ return java.util.UUID.randomUUID() + '' }
Scenario: Create lead
* def req = read('classpath:data/leads.json')
* def fun = function(x, i){ x.id = getId(); return x }
* def updated = karate.map(req.updated, fun)
* def deleted = karate.map(req.deleted, fun)
Given path '/leads'
And request req
When method post
Then status 200
And match $..updated.length() == [3]
是否可以以某种方式替换这些行
* def fun = function(x, i){ x.id = getId(); return x }
* def updated = karate.map(req.updated, fun)
* def deleted = karate.map(req.deleted, fun)
像
我们是否有允许json在JS函数中轻松导航的smth?否。JsonPath在JavaScript中不起作用。您可能需要使用
karate.map()
进行第二次变换。对于只读JsonPath,您可以使用karate.JsonPath()
——但是很抱歉,这样的更新是不可能的
有关更多信息,请参阅另一个答案:否。JsonPath在JavaScript中不起作用。您可能需要使用
karate.map()
进行第二次变换。对于只读JsonPath,您可以使用karate.JsonPath()
——但是很抱歉,这样的更新是不可能的
有关更多信息,请参考另一个答案:这里是前面示例中使用的JSON链接:这里是前面示例中使用的JSON链接:无论如何,谢谢。
* def fun = function(x, i){ $x..id = getId(); return x }
* def req = karate.map(req, fun)