zend-framework2 - 如何 phpunit 测试 $_SERVER ['REMOTE_ADDR' ]

标签 zend-framework2 phpunit

我正在运行 Zf2,在我的 Controller 中有一行

$apiCaller = $_SERVER['REMOTE_ADDR'];

当我运行 PHPUnit 3.7.27 时,它抛出以下错误,

There was 1 error:

1) MainTest\Controller\myControllerTest::testcreateActionCanBeAccessed
Undefined index: REMOTE_ADDR

/home/websites/mysite/module/Main/src/Main/Controller/myController.php:113

如何对这条线进行单元测试?

最佳答案

感谢@Mike B,

将代码行更改为以下内容

  $servParam = $this->getRequest()->getServer();
  $apiCaller = $servParam->get('REMOTE_ADDR');

关于zend-framework2 - 如何 phpunit 测试 $_SERVER ['REMOTE_ADDR' ],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19432708/

相关文章:

php - 在实例化自己对象的函数内部使用 PHP 中的模拟对象

html - zend 框架 2 html5 音频标签不起作用

php - 使用 ZF2 时重定向到公用文件夹

php - 关于获取通用模拟对象的简单 PHPUnit 之一

php - 不可测试的基类扩展 PHPUnit_Framework_TestCase

php - 传递给 Foo::__construct() 的参数 1 必须是 Psr\Log\LoggerTrait 的实例,给出的 Mock_Trait_LoggerTrait_65811a25_bdddd884 的实例

PHPUnit - 我认为我不能使用模拟来测试依赖项注入(inject)容器是否正确?

php - 如何使用具有外键的 Hydrator 并在 ZF2 中的 View 上显示两个实体属性

zend-framework2 - 在 FirePHP 记录器上显示对象

php - 如何在zend框架2中配置路由?