2

我收到此错误

Fatal error: Call to a member function hasResource() on a non-object in D:\Projects\Tickle\application\controllers\ErrorController.php on line 53

第 53 行的样子

if (!$bootstrap->hasResource('Log')) {

好像$this->getInvokeArg('bootstrap')退货了null。我没有其他错误。我在其他地方读到了另一个问题,可能引发了一个异常,该异常会重置我的控制器或引导程序或类似的东西。是否有可能不显示该异常?即使在 PHP 错误日志中?

我目前的设置看起来像

单个测试运行良好,但我仍然收到错误

D:\Projects\Tickle\tests>phpunit
PHPUnit 3.5.5 by Sebastian Bergmann.

.
Fatal error: Call to a member function hasResource() on a non-object in D:\Projects\Tickle\application\controllers\Error
Controller.php on line 53
4

1 回答 1

6

bootstrap 参数在您调用时注册$application->run()。在您的单元测试引导程序中,不调用 run 。您必须使用以下代码自己设置 boostrap 参数:

Zend_Controller_Front::getInstance()->setParam('bootstrap', $bootstrap);
于 2011-01-01T10:00:47.170 回答