0
在扩展WebTestCase的测试中,我想测试一些东西,这取决于传递GET参数。Symfony2:为phpunit功能测试传递GET参数
一种POST参数解决方案可以在这里找到: Symfony2 Functional test: Passing form data directly
但是,如果我用这个模拟的GET这是行不通的。
测试代码:
// given
$client = static::createClient();
$paramValue = 'frwkuh437iwaw';
// when
$client->request(
'GET',
'/',
['paramName' => $paramValue],
[],
[
'HTTP_Host' => 'boys2go.com',
'REMOTE_ADDR' => '127.0.0.1',
'HTTP_X-FORWARDED-FOR' => '127.0.0.1',
]
);
在类部分,他们在那里进行了评估:
$crossSaleParametersValue = $requestStack
->getCurrentRequest()
->query->get('paramName');
if (!empty($crossSaleParametersValue)) {
echo 'crossSale';
}
大家有一个想法,我怎么能传给我的GET参数?
在'/'之后加入它们的肮脏尝试都不起作用。
我怎样才能让我的GET参数进入我的测试?
是什么,而不调用的getURL只是连接字符串之间的区别? getUrl的$ params参数 - 应该去那里?我的数组与GET参数? –
如果您在Symfony中定义了如下的路由:@Route(“/ edit/{id}”,name =“edit”),getUrl()中的$ params应该包含一个数组['id'] => 99。在你的测试中,你发送一个查询参数,这是不同的。 –