我需要使用空手道框架来验证API响应的帮助。 我有彼此“独立”的API。 我有POST方法以及请求参数。当我点击那个特定的API时,得到的响应带有不同的参数(请求参数和响应参数没有一个匹配项)。
现在我要验证响应参数值。
示例:请求:“方法”发布
学校名称:“ abcd” 注册日期:“ 1:10:2010”
响应: 原则名称:“ pqrs” 原则电子邮件ID“ pqrs@gmail.com
现在我要验证“原理名称”不应为空
我已经这样实现了,但是它不起作用
Feature: School info
Background:
* url baseUrl
Scenario: check Principles info
Given path ‘School info’
And request {school name: “abcd” ,register date : “1:10:2010”}
When method post
Then status 200
And match response.response contains {“type”: “Success”,”code”:20000}
And match response.principle list[*] { “Principle name”: “#notnull”}
每当我运行此文件时,如果提交的主体名称为null,它将始终通过API wvwnt
。
它只是检查成功消息(And match response.response contains {“type”: “Success”, ”code”:20000}
)并传递API
答案 0 :(得分:1)
您用于验证Principlelist的代码没有正确的断言。
match each
对于使用架构验证json数组会更加方便
* match each response.principlelist contains {"Principal name" : "#notnull"}