首页 文章

空手道API:显示JSON解析错误,而不是返回错误的HTTP代码

提问于
浏览
1

给出了以下步骤列表

Given path 'verify'
And header x-api-key = apiKey
And header tenant-id = tenantId
And request a_json_object_with_invalid_user_id_to_verify
When method put
Then status 404

当 endpoints 返回HTTP 200(这是我需要修复的错误)但是有一个无效的json响应,如

{
  "score" : 
}

抛出此异常

com.jayway.jsonpath.InvalidJsonException: net.minidev.json.parser.ParseException: Unexpected character (}) at position 15.
    at com.jayway.jsonpath.spi.json.JsonSmartJsonProvider.parse(JsonSmartJsonProvider.java:64)
    at com.jayway.jsonpath.internal.JsonContext.parse(JsonContext.java:82)
    at com.jayway.jsonpath.JsonPath.parse(JsonPath.java:596)
    at com.intuit.karate.JsonUtils.toJsonDoc(JsonUtils.java:84)
    at com.intuit.karate.StepDefs.method(StepDefs.java:344)

我希望看到测试失败,因为收到预期404的错误状态代码200.我想知道在空手道中抛出这个异常是否正确?

谢谢 .

1 回答

  • 1

    我为错误阅读你的问题而道歉 .

    在处理格式错误的JSON响应时,空手道中确实存在一个错误 .

    我们已经打开了一个问题,您应该很快就能获得补丁版本:https://github.com/intuit/karate/issues/259

相关问题