我已经通过使用Symfony2对我所有项目的动态测试进行了编码(从2016年开始!),它默认测试框架PhpUnit,我编写了一个非常简单的功能测试来检查我的一个页面的状态代码(主页)是正确的,但它发展“Faild声称302匹配预期200”虽然手动,Symfony在工具栏中显示它成功(200)。
public function testDashboard()
{
$client = static::createClient();
$crawler = $client->request('GET', '/');
$this->assertEquals(200, $client->getResponse()->getStatusCode());
}
答案 0 :(得分:1)
302状态代码是重定向。也许那条路线/在防火墙后面,你被重定向到你的测试中的登录页面,而你在浏览器中测试它已经登录。也许那条/路由正在进行一些重定向,在工具栏中你看到200路由你已被重定向到。只需转储$client->getResponse()
并查看所有文件,例如内容和标题。如果它是302重定向,则需要“位置”标题以查看重定向到的位置。也许这会让你知道发生了什么。