【发布时间】:2016-05-03 16:41:18
【问题描述】:
我有一个请求类,对于发布请求失败。当我用 ajax 调用它时,我得到一个 422,因为验证规则失败。但是当我使用 phpunit 对具有相同值的相同路由进行测试时,它会返回 302。
我也没有收到诸如“需要字段 foobar”之类的错误消息,只有 302。
那么如何获取错误消息以检查它们是否相等?
这是我的测试代码:
//post exam
$this->post('modul/foo/exam', [
'date' => '2016-01-01'
])
->assertResponseStatus(200);
//post exam again
$this->post('modul/foo/exam', [
'date' => '2016-01-01'
])
->assertResponseStatus(302); //need to get 422 with th errors because its an api
【问题讨论】:
-
如果使用 ajax,验证失败会返回 422。如果不使用,验证失败会返回 302 重定向。您的测试要么需要将请求作为 ajax,要么遵循重定向。我们无法提供进一步的帮助,因为您没有发布任何代码、展示您的测试等。
标签: php laravel phpunit laravel-5.2