【问题标题】:how can I verify response against a predefined json schema in karate?如何验证对空手道中预定义 json 模式的响应?
【发布时间】:2017-10-31 06:33:00
【问题描述】:

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

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

下面有什么办法吗?

And match response == someJsonSchemaDefinedInKarateConfigFile

【问题讨论】:

    标签: json testing karate


    【解决方案1】:

    是的,请参阅reading files 上的文档。

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

    (编辑):karate-config.js 中有一条评论要求如何初始化它们

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

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

    function() {
      var config = {
    
      };
      config.mySchema = karate.read('classpath:my-schema.json');
      return config;
    }
    

    【讨论】:

    • 我想把 json 模式放到 karate-config.js 中
    • 在您原来的问题中并不清楚:\ 无论如何,我已经编辑了我的答案,请确认。
    • 这个可行,但出现了另一个问题,必须在另一个地方问
    猜你喜欢
    • 2018-08-28
    • 1970-01-01
    • 1970-01-01
    • 2020-11-04
    • 2019-12-13
    • 2019-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多