laravel - Laravel 5.8 | 测试像 assertJsonMessage 这样的 JSON 响应?
问题描述
我想测试 json 测试响应是否包含不同的值,在这种情况下是错误消息,如下所示:
public function testFieldsAreRequired()
{
$this->postJson('/posts', [])
->assertStatus(422)
->assertJsonValidationErrors([
'name',
'email',
'date_of_birth',
])
->assertJsonFragment([
'The name field is required.'
])
->assertJsonFragment([
'The email field is required.'
])
->assertJsonFragment([
'The date of birth field is required.'
]);
}
这种方法效率不高。我正在寻找一种方法,如下所示:
.....
->assertJsonMessage([
'The name field is required.',
'The email field is required.',
'The date of birth field is required',
]);
像上面一样,我不需要指定键并且可以在一个数组中指定不同的值。因此,它非常有效且易于管理。
但是assertJsonMessage
是一种受保护的方法,所以我不确定原始设计和使用这种方法。
解决方案
推荐阅读
- html - 切断文本时,它会拉伸父元素
- php - 与数据透视表 Laravel 的关系中的错误
- json - 使用 JOLT 规范过滤数组时如何使用“不等于”条件
- c - 用 C 编写的程序,使用 3 位数字但不能使用 5 位数字
- python - 获取最小 MSE python 的路径
- javascript - 使用变量作为角度的火力参考
- excel - 在 Excel 中禁用非标准本地格式
- c# - 如何使用 ClosedXML 打开受保护的 Excel 文件?
- python - Python 的依赖注入和自定义pickler
- adobe-analytics - Segment Builder - 在多个 URL 中“粘贴”的任何方式(由于不同的名称约定/等)?