【问题标题】:Symfony2 Functonal Tests, query parameters are ignoredSymfony2 功能测试,查询参数被忽略
【发布时间】:2015-09-01 02:09:33
【问题描述】:

如何在 Symfony2 的功能测试中通过请求发送附加参数。我有

$client = static::createClient();
$crawler = $client->request("GET", '/timezones/23.html?X=1', array("rest_auth" => "wrong"));

当请求到达我的 Symfony2 应用程序时,Xrest_auth 都丢失了。我也用POST 尝试过,甚至用过

json_encode(array("rest_auth" => "wrong"))

向请求发送额外的查询参数似乎没有任何作用。

【问题讨论】:

  • 您能否提供您要测试的控制器操作的代码?
  • 您如何访问控制器中的 GET 参数?我刚刚测试了您的 $client->request 版本(使用 symfony2.3),它似乎将两个值对都正确发送到了我的控制器(使用 var_dump($this->getRequest()->query->all()); 可见)
  • 我看不出这与 PHPUnit 有什么关系。
  • @ejuhjav 就是这样!我正在使用$_REQUEST
  • @SebastianBergmann 我正在通过 phpunit 运行它

标签: symfony phpunit functional-testing


【解决方案1】:

事实证明,这对传递的参数有效

$req->get("timezone")

但这不会

$_REQUEST['timezone']
$_GET['timezone']

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-13
    • 1970-01-01
    • 2021-02-18
    • 1970-01-01
    相关资源
    最近更新 更多