我在 vagrant 机器上设置了一个 laravel 5.4 项目,我正在尝试在其上创建 Laravel Dusk 测试。这有点棘手,我在这里按照教程进行操作:http: //www.jesusamieiro.com/using-laravel-dusk-with-vagrant-homestead/
它运行良好,但会话变量似乎没有保存。我在发布路线中有此代码
if (!session('user_name')) {
$request->session()->flash("message", "Your session expired. Click "Please Confirm" to approve your monthly donation.");
return redirect()->back();
}
并在第一次获取页面时在 get 请求中设置。我在黄昏进行了这个测试:
$browser->visit("http://support.welcome.dev/?layout_id={$layout}&purl={$supporter->purl}&user_name={$supporter->name_first}&amount=10&ct={$hash}")
->press("Please Confirm")
->assertPathIs("/confirm");
此测试失败并被重定向,消息会话已过期。但是,当 post route 检查 user_name 变量的代码被注释掉时,它工作得很好。当我在浏览器上手动测试原始代码时,它可以工作。
任何帮助表示赞赏。