Codeception ZF1集成

时间:2014-01-10 16:57:02

标签: php unit-testing zend-framework codeception

我尝试使用Codeception测试我的ZF项目。

首先我下载了​​phar文件并创建了代码结构(它可以通过php codecept.phar run进行虚拟测试)。然后我将以下值添加到tests/acceptance.suite.yml

class_name: WebGuy
modules:
    enabled:
        - PhpBrowser
        - WebHelper
        - ZF1
    config:
        PhpBrowser:
            url: 'http://localhost'
    ZF1:
        app_path: '../app'
        lib_path: '../lib' 

并重建代码(构建没问题)

然后我添加了简单的验收测试:

<?php
$I = new WebGuy($scenario);
$I->wantToTest('hello action');
$I->amOnPage("/hello");

现在run命令说:

PHP Fatal error:  Call to a member function getBootstrap() on a non-object
in phar:///var/www/myproject/tests/codecept.phar/src/Codeception
/Module/ZF1.php 
on line 119

有什么建议吗?为什么bootstrap没有在代码模块中初始化?

1 个答案:

答案 0 :(得分:0)

这个问题已经很老了,但现在可能对某人有所帮助:

PHPBrowser模块与ZF1模块不兼容。您必须在套件中仅使用其中一个。 因此,在PHPBrowser和另一个套件中进行多个套件测试,以便对框架进行内部测试。

我在一个大型实验室系统(zf 1.12.20)中集成了代码(V2.3)并且有很多错误。我写了一个全新的ZF1模块类,并使用他们的ZF1模块作为模板。不可能为代码模块提供zf1项目中的所有配置。