Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony2功能测试$crawler不工作_Symfony_Functional Testing - Fatal编程技术网

Symfony2功能测试$crawler不工作

Symfony2功能测试$crawler不工作,symfony,functional-testing,Symfony,Functional Testing,我发现Symfony2中的功能测试总是试图请求页面为“http://localhost" 我的环境是用虚拟主机设置的,因此我的应用程序位于“http://symfony.dev" 经过一些测试,我发现如果我运行: var_dump($client->getResponse()->getContent()); 我会得到我想要的页面,但如果我放弃$crawler,我可以看到它,而不是请求一个类似“的页面”http://symfony.dev/page“它请求”http://localh

我发现Symfony2中的功能测试总是试图请求页面为“http://localhost"

我的环境是用虚拟主机设置的,因此我的应用程序位于“http://symfony.dev"

经过一些测试,我发现如果我运行:

var_dump($client->getResponse()->getContent());
我会得到我想要的页面,但如果我放弃$crawler,我可以看到它,而不是请求一个类似“的页面”http://symfony.dev/page“它请求”http://localhost/page"

这给了404,所以我无法测试表单等等


是否需要设置基本URL以使其正常工作?我是否应该使用不同的东西,比如Selenium?

我发现我可以将域传递给客户端。我将使用此功能制作一个基本的
WebTestCase
,这样我的测试就可以工作了

$client=static::createClient(array(),array('HTTP_HOST'=>'symfony.dev');
$client->followRedirects(true);

进行功能测试访问是正常的,因为它不是完整的http请求,但它模拟了一个完整的http请求。尝试查看应用程序/日志以识别错误。我知道错误是什么。它正在访问localhost,它被设置为与我的应用程序不同的虚拟服务器,因此它请求的页面只是一个404。我想知道我是否可以改变域爬虫的用途,或者找到一个解决方法。