2

目前用于检查答案响应 IO 使用以下方法:

And match response ==
"""
  {
    "status":#number,
    "message":#string
  }
"""

有没有办法像下面那样做?

And match response == someJsonSchemaDefinedInKarateConfigFile
4

1 回答 1

3

是的,请参阅阅读文件的文档。

And match response == read('my-schema.json')

(编辑):有一条评论要求如何在karate-config.js

karate-config.js用于“全局”配置,我真的不建议在此处转储模式,除非您确定几乎所有测试都会使用它。karate-config.js但是如果你从一个文件中读取,它可能没问题,因为它不会是一个耗时的操作,记住每个 Scenario.

您可以在其中karate-config.js轻松加载 JSON 或 JS 文件,方法是使用karate.read(). 这应该回答你的问题:

function() {
  var config = {

  };
  config.mySchema = karate.read('classpath:my-schema.json');
  return config;
}
于 2017-10-31T17:55:14.987 回答