我正在測試一個表單,用戶必須介紹一些文本,比如說100和500個字符。更好的方法來測試驗證錯誤
我使用模擬用戶輸入:
$this->actingAs($user)
->visit('myweb/create')
->type($this->faker->text(1000),'description')
->press('Save')
->see('greater than');
在這裏,我正在尋找在響應中greater than
一段文字......這取決於該驗證錯誤中指定的翻譯。
如何在不依賴驗證錯誤的文本的情況下進行相同的測試,並僅依賴於錯誤本身?
控制器:
public function store(Request $request)
{
$success = doStuff($request);
if($success)
{
Flash::success('Created');
}else{
Flash::error('Fail');
}
return Redirect::back():
}
DD(會話::所有()):
`array:3 [
"_token" => "ONoTlU2w7Ii2Npbr27dH5WSXolw6qpQncavQn72e"
"_sf2_meta" => array:3 [
"u" => 1453141086
"c" => 1453141086
"l" => "0"
]
"flash" => array:2 [
"old" => []
"new" => []
]
]
不能使用,即使我真的得到驗證錯誤工作。 assertSessionHasErrors()驗證爲false。 '會話丟失鍵:錯誤 失敗斷言錯誤爲真。 ' – vivoconunxino
發佈您的控制器代碼 –
可能與laravel 5.1相關,而不是我的控制器,請查看:https://laracasts.com/discuss/channels/testing/session-missing-key-in-phpunit – vivoconunxino