从zf2中的另一个模块自动加载phpunit测试类

时间:2013-04-19 22:31:37

标签: zend-framework phpunit zend-framework2

我正在尝试将另一个模块的测试类重用到我当前的模块中。我的目录结构如下:

Home/
    Module.php
    config/
        module.config.php
    src/
        Home/
            <code files>
    test/
        phpunit.xml
        bootstrap.php
        HomeTest/
            <test code files>
Loader/
    Module.php
    config/
        module.config.php
    src/
        Loader/
            <code files>
    test/
        phpunit.xml
        bootstrap.php
        LoaderTest/
            <test code files>

我在Loader / test /文件夹中运行phpunit测试类,需要重用Home / test / Hometest / Model中的类。

我在我的bootstrap文件中尝试使用它:

AutoloaderFactory::factory(
   array(
     'Zend\Loader\StandardAutoloader' => array(
       'autoregister_zf' => true,
       'namespaces' => array(
         __NAMESPACE__ => __DIR__ . '/' . __NAMESPACE__,
        'HomeTest' => __DIR__ . '/Home/test/HomeTest',
       ),
     ),
   )
);

我使用上面的加载机制得到了这个错误:

Fatal error: Class 'HomeTest\Model\UserTableTest' not found

1 个答案:

答案 0 :(得分:1)

您需要导航从Loader/testHome/test的路径,试试这个......

AutoloaderFactory::factory(
    array(
        'Zend\Loader\StandardAutoloader' => array(
            'autoregister_zf' => true,
            'namespaces' => array(
                __NAMESPACE__ => __DIR__ . '/' . __NAMESPACE__,
                'HomeTest' => __DIR__ . '/../../Home/test/HomeTest',
            ),
        ),
    )
);