我想验证JSON响应的结构以及数据类型。我想验证返回的JSON是否具有我在测试中指定的EXACT结构。我觉得我与seeResponseMatchesJsonType
关系密切,但是当传递的JSON包含不在我传递给seeResponseMatchesJsonType
的方案中的字段时,它不会失败。
我的测试功能内部:
$I->sendGET('people');
$I->seeResponseMatchesJsonType([
"id"=> 'integer:>0',
"first_name"=> "string",
"last_name"=> "string"
], '$.data[0]');
GET请求返回的数据:
{
"data": [
{
"id": 87,
"first_name": "John",
"last_name": "Smith",
"email": "johnsmith@example.com"
}
]
}
测试不会失败,但是我希望它能够进行测试(因为传递的JSON具有一个email
字段,而传递给seeResponseMatchesJsonType
的方案则没有)。
我使用了错误的断言,还是有办法使用seeResponseMatchesJsonType
来完成我想做的事情?
谢谢