Symfony功能测试在重定向后断言
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Symfony功能测试在重定向后断言相关的知识,希望对你有一定的参考价值。
我目前正在尝试编写功能测试但是在登录并重定向到新页面后我遇到了问题。一切正常,直到最后一次断言。重定向工作正常,重定向后的内容页面没问题,但我在上次断言时收到错误:断言false为真。在这里我没有发现任何可以帮助我解决类似问题
这是代码:
class DefaultControllerTest extends WebTestCase
{
public function testIndex()
{
$client = static::createClient(array(),
array(
'HTTP_HOST' => 'locahost'
));
$crawler = $client->request('GET', '/login');
echo $client->getRequest()->getUri();
$form = $crawler->selectButton('Login')->form(array(
'_username' => 'user',
'_password' => 'pass',
),'POST');
$client->submit($form);
$this->assertTrue($client->getResponse()->isRedirect());
$client->followRedirect();
echo $client->getRequest()->getUri();
print_r( $client->getResponse()->getContent());
$this->assertTrue($crawler->filter('html:contains("New")')->count() > 0);
}
}
答案
您必须获取followredirect()
函数返回的爬虫:
$crawler = $client->followRedirect();
以上是关于Symfony功能测试在重定向后断言的主要内容,如果未能解决你的问题,请参考以下文章