assertRedirectedToAction('CatsController@index') 失败。 路线 Route::get('/','CatsCon-6ren">
gpt4 book ai didi

php - 为什么我会收到错误 Failed asserting that Response Object (...) is an instance of class "RedirectResponse"?

转载 作者:行者123 更新时间:2023-12-04 18:05:25 25 4
gpt4 key购买 nike

问题

PHPUnit 断言 $this->assertRedirectedToAction('CatsController@index') 失败。

路线

Route::get('/','CatsController@index');

测试用例

class CatTest extends TestCase {

/**
* A basic functional test example.
*
* @return void
*/
public function testHomePageRedirection()
{
$this->call('GET','/');
$this->assertRedirectedToAction('CatsController@index');

}

错误

Failed asserting that Illuminate\Http\Response Object (...) is an instance of class "Illuminate\Http\RedirectResponse".

/Applications/MAMP/htdocs/crudapp/vendor/laravel/framework/src/Illuminate/Foundation/Testing/AssertionsTrait.php:110
/Applications/MAMP/htdocs/crudapp/vendor/laravel/framework/src/Illuminate/Foundation/Testing/AssertionsTrait.php:140
/Applications/MAMP/htdocs/crudapp/app/tests/CatTest.php:13

有人可以帮我确定为什么我会遇到这个错误吗?

最佳答案

因为您没有被重定向CatsController@index - 那就是您所在的页面。

Route::get('/','CatsController@index')
Route::get('/redirect', function () {
return Redirect::action('CatsController@index');
});

public function testHomePageOk()
{
$this->call('GET','/');
$this->assertResponseOk();
}


public function testRedirectToHomePage()
{
$this->call('GET','/redirect');
$this->assertRedirectedToAction('CatsController@index');
}

关于php - 为什么我会收到错误 Failed asserting that Response Object (...) is an instance of class "RedirectResponse"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27760654/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com