json 中的字符串替换不适用于复杂对象

String replacement inside json not working with complex objects

我有这个 Javascript 对象:

{ person: { name: "john", age: 32 }}

端点返回:

{
  "name": "john",
  "age": 32
}

我有以下步骤:

Given path 'endpoint/'
When method get
Then status 200
And match response ==
"""
{
  "name": #(person.name),
  "age": #(person.age)
}
"""

这不起作用,因为#(person.name) 和#(person.age) 的计算结果都为空,我该如何解决? (将它们放在一个新变量中不是我正在寻找的修复方法)

给你:

* def data = { person: { name: 'john', age: 32 } }
* def response = { name: 'john', age: 32 }
* match response == data.person

既然你看的一头雾水,那我补充一下(但由于以上原因不推荐):

* match response == { name: '#(data.person.name)', age: '#(data.person.age)' }