如何在黄瓜特征文件中表示嵌套的 json 对象

tri*_*999 4 json cucumber cucumber-jvm

我需要在功能文件中表示 JSON 对象。我可以为此使用一个 json 文件来获取代码。但这意味着我无法从功能文件中传递值。

Scenario: Test

Given a condition is met

Then the following json response is sent
 | json |
 | {"dddd":"dddd","ggggg":"ggggg"}|
Run Code Online (Sandbox Code Playgroud)

以上适用于普通的json。但是,如果有嵌套对象等,那么像上面那样在一行中编写 json 会使该功能非常难以阅读且难以修复。

请告诉我。

Dav*_*lla 7

您可以使用字符串来执行此操作,它使 json 更加清晰。

Then the following json response is sent
  """
   {
      'dddd': 'dddd',
      'ggggg': 'ggggg',
      'somethingelse': {
        'thing': 'thingvalue',
        'thing2': 'thing2value'
      }
    }
  """
Run Code Online (Sandbox Code Playgroud)

在代码中,可以直接使用:

Then(/^the following json response is sent$/) do |message|
  expect(rest_stub.body).to eq(message)
end
Run Code Online (Sandbox Code Playgroud)

或类似的东西。