Je commence à écrire quelques cas de test pour les classes de contrôleurs en utilisant Zend Framework 1.10.6 et Zend_Test_PHPUnit_ControllerTestCase. J'ai des problèmes avec un élément, qui est que pendant que les cas de test sont en cours d'exécution, Zend_Controller_Action_HelperBroker ne peut pas trouver l'aide d'action Layout.Zend_Test_PHPUnit_ControllerTestCase et Zend_Layout, impossible de trouver le plugin Layout lors des tests
Voici les os nus de mon cas de test:
require_once 'PHPUnit/Framework.php';
require_once 'Zend/Test/PHPUnit/ControllerTestCase.php';
require_once 'controllers/IndexController.php';
class Application_Controllers_IndexControllerTest extends Zend_Test_PHPUnit_ControllerTestCase {
public $_application;
protected function setUp() {
$this->bootstrap = array($this, 'appBootstrap');
parent::setUp();
}
public function appBootstrap() {
// Create application, bootstrap, but don't run
$this->_application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
$this->_application->bootstrap();
$this->getFrontController()->setParams($this->_application->getOptions())
->addControllerDirectory(APPLICATION_PATH . '/controllers');
}
public function testIndexAction() {
$this->dispatch('/index/index');
$this->assertController('index');
$this->assertAction('index');
}
}
Je reçois une exception quand je lance le cas de test:
Zend_Controller_Action_Exception: Aide à l'action par la mise en page nom introuvable
Lorsque Je commente les deux lignes dans la classe Zend_Controller_Action_HelperBroker pour essayer de trouver la source de cette autour de la ligne 368, je reçois:
Zend _Loader_PluginLoader_Exception: le plugin nommé 'Layout' n'a pas été trouvé dans le registre; chemins utilisés: Zend_Controller_Action_Helper_: Zend/Controller/Action/Helper/
Le chargement des scripts de mise en page fonctionne très bien dans mon application lors de l'exécution, il semble que le bon chemin ou un registre pour le Zend_Controller_Action_Helper ne peuvent pas être trouvés lors de l'exécution des tests sous PHPUnit et donc le plugin Layout ne peut pas être chargé.
J'ai vérifié que Zend est installé correctement et que Layout.php est à la bonne place.
Des idées?
Del