放心Json路径returns异常

Rest Assured Json Path returns Exception

我正在从文件中读取 json,以便将其与 http 请求主体的 json 进行比较。

我在做

JsonPath expectedJson = new JsonPath(new File("response.json"));
// some more code
assertThat().body("", equalTo(expectedJson.getMap("")));

这导致 JsonPathException: Failed to parse the JSON document

这是 response.json 文件,我从 Postman 的回复中复制了它:

{
  "screenDefinition":{
    "taskId":"account-type",
    "parameters":null
  },
  "prospect":{
    "initializationType":"FIRST_HOLDER",
    "jointAccount":{
      "jointAccountId":655
    },
    "emailConfirmed":false,
    "addressConfirmed":false,
    "emailValidated":false,
    "smsCodeAttemptsLeft":0,
    "mobilePhoneValidated":false,
    "paragraphsAccepted":false,
    "termsConditionsAccepted":false,
    "changedToAutonomousMethod":false,
    "changedToIdentificationMethod":false,
    "contractAccepted":false,
    "prospectOnboardContactType":"NONE",
    "secondAccountHolder":false,
    "evidencesUploaded":false,
    "uploadEvidencesLater":false
  }
}

有什么想法吗?

您得到的 JsonPathException 可能是由 java.io.FileNotFoundException 引起的,这意味着您的文件路径不正确。 先尝试检查文件是否存在:

File file = new File("response.json");
System.out.println("File exists: " + file.exists());
JsonPath jsonPath = new JsonPath(file);