点击链接后,重定向测试无法通过

时间:2016-06-22 15:02:45

标签: php symfony redirect routes phpunit

我正在用PHPUnit for Symfony编写一些虚拟测试,以便更多地了解PHP中的函数测试。

这是问题所在。 这是我的测试方法:

//Redirecting test by clicking on href
public function testRedirect() {
    $client = static::createClient();
    $crawler = $client->request('GET', '/redirect');

    $link = $crawler->selectLink('Click me !')->link();
    $client->click($link);

    $crawler2 = $client->followRedirect();
    $this->assertTrue(
            $client->getResponse()->isRedirect()
    );
    $this->assertTrue($crawler2->filter('html:contains("Haha, you\'ve been redirect !")')->count() > 0);
}

这是我的链接:

<a href="{{ path('redirect2') }}">Click me !</a>

目的地的信息:

Haha, you've been redirect !

我认为

redirect2

是我的路线名称。

测试给了我:

1) AppBundle\Tests\Controller\DefaultControllerTest::testRedirect
LogicException: The request was not redirected.

所以我的问题是:是否href认为是重定向?

提前致谢! Telest,

1 个答案:

答案 0 :(得分:0)

当您按照重定向时,您已经在&#34; next&#34;页。只需在断言

之后移动行Keyboard.where(type: 'MechanicalKeyboard')