【发布时间】:2018-05-08 13:03:53
【问题描述】:
我正在为我的控制器编写一些测试,但其中一个测试不起作用。应该搜索并将结果返回到页面。但它实际上是重定向到主页。这是我的代码:
use DatabaseMigrations;
protected $user;
public function setUp()
{
parent::setUp();
$this->seed();
$this->user = factory(User::class)->create(['role_id' => 3]);
}
/** @test */
public function test_manage_search_user()
{
$response = $this->followingRedirects()->actingAs($this->user)->get('/manage/users/search', [
'choices' => 'username',
'search' => $this->user->username,
]);
$response->assertViewIs('manage.users');
$response->assertSuccessful();
$response->assertSee($this->user->email);
}
您应该获得的 URL 如下所示:
http://localhost/manage/users/search?choices=username&search=Test
我再次检查,它似乎没有在 get 请求的参数中给出。我该如何解决这个问题?
【问题讨论】:
-
你用的是哪个 laravel 版本?
-
我在使用 Laravel 5.5 我可以这样做:$response = $this->followingRedirects()->actingAs($this->user)->get('/manage/users/search?选择=用户名&搜索='.$this->user->username.'');但这并不像我想要的那样整洁