$this->application->bootstrap()->run();
从我的测试设置功能里,并没有输出。你应该在测试环境中拨打run()
吗?
我的测试工作,但前端控制器插件从未执行(这是我的应用程序所必需的)。将->run()
放入执行插件,但phpunit停止并且没有输出。
我有工作测试,但我需要前端控制器插件在测试环境中执行。引导程序执行,但插件不执行。当他们通过->run()
完成时,没有输出来
有什么建议吗?
编辑:添加setup()
例如
require_once realpath(__DIR__.'/../../').'/TestBackendConfiguration.php';
abstract class Controllers_Backend_BaseControllerTest extends Zend_Test_PHPUnit_ControllerTestCase {
protected $config;
protected $application;
protected $users;
protected static $iterations = 0;
public function setUp() {
$this->bootstrap = array($this, 'appBootstrap');
parent::setUp();
$this->configureUsers();
$this->configureACL($this->users);
}
public function appBootstrap() {
$this->config = new Zend_Config_Ini(CORE_PATH . '/configs/common.ini', APPLICATION_ENV, true);
$this->config->merge(new Zend_Config_Ini(CORE_PATH . '/configs/backend.ini', APPLICATION_ENV));
$this->config->merge(new Zend_Config_Ini(CORE_PATH . '/configs/application.ini', APPLICATION_ENV));
// Reset bootstraps
$this->config->bootstrap->path = CORE_PATH . '/backend/Bootstrap.php';
$this->config->resources->frontController->controllerDirectory = CORE_PATH . '/backend/controllers';
$this->config->resources->frontController->actionHelperPaths->Frontend_Controller_Action_Helper = CORE_PATH . '/backend/controllers/Action/Helper';
$this->config->resources->frontController->baseUrl = "/admin";
$this->config->resources->layout->layoutPath = CORE_PATH . '/backend/layouts/scripts';
$this->application = new Zend_Application(APPLICATION_ENV, $this->config);
$this->application->bootstrap()->run();
}
}
的原因调整到$this->config
是因为我有前端和后端相关的测试,他们需要不同的configs。他们有他们自己的Configuration.php
脚本,这两个脚本都声明APPLICATION_PATH
,因此哪个测试运行2nd无法重新定义此const并且应用程序不能正确引导。
现在,我主要关心的是我的插件没有在测试环境中调度,这使我的应用程序有点因为我有数据添加到注册表,我需要访问,显然不存在。想法?
为我的测试添加->run()
调度插件但没有输出。我的后端控制器测试全部扩展了这个负责设置后端测试环境的类。
不,你不应该需要调用运行()。你的测试类是否扩展了'Zend_Test_PHPUnit_ControllerTestCase'?你能发布整个设置方法吗? – 2013-03-02 11:52:54
当然,是的,测试类扩展了Zend_Test_PHPUnit_ControllerTestCase。我有一个具有设置功能的基类,然后我个人的控制器测试正在扩展这个类。 – sudoyum 2013-03-02 15:33:21