8

Doctrine を使用して、Zend フレームワーク 2 を使い始めたばかりです。Album モジュールの単体テストをセットアップしたいと考えています。

コマンド プロンプトから実行するc:\wamp\www\zf2-tutorial\module\Album\test > phpunitと、次のエラーが表示されます。

PHPUnit 3.7.10 by Sebastian Bergmann.

Configuration read from C:\wamp\www\zf2-tutorial\module\Album\test\phpunit.xml.d
ist

.FFE

Time: 2 seconds, Memory: 8.25Mb

There was 1 error:

1) AlbumTest\Controller\AlbumControllerTest::testIndexActionCanBeAccessed
Zend\ServiceManager\Exception\ServiceNotFoundException: Zend\ServiceManager\Serv
iceManager::get was unable to fetch or create an instance for doctrine.entityman
ager.orm_default

C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\Service
Manager\ServiceManager.php:452
C:\wamp\www\zf2-tutorial\module\Album\src\Album\Controller\AlbumController.php:2
5
C:\wamp\www\zf2-tutorial\module\Album\src\Album\Controller\AlbumController.php:3
3
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\Mvc\Con
troller\AbstractActionController.php:88
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\EventMa
nager\EventManager.php:464
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\EventMa
nager\EventManager.php:208
C:\wamp\www\zf2-tutorial\vendor\zendframework\zendframework\library\Zend\Mvc\Con
troller\AbstractController.php:107
C:\wamp\www\zf2-tutorial\module\Album\test\AlbumTest\Controller\AlbumControllerT
est.php:71

--


There were 2 failures:

1) AlbumTest\Controller\AlbumControllerTest::testDeleteActionCanBeAccessed
Failed asserting that 302 matches expected 200.

C:\wamp\www\zf2-tutorial\module\Album\test\AlbumTest\Controller\AlbumControllerT
est.php:54

2) AlbumTest\Controller\AlbumControllerTest::testEditActionCanBeAccessed
Failed asserting that 302 matches expected 200.

C:\wamp\www\zf2-tutorial\module\Album\test\AlbumTest\Controller\AlbumControllerT
est.php:64

FAILURES!
Tests: 4, Assertions: 3, Failures: 2, Errors: 1.

Zend\ServiceManager\Exception\ServiceNotFoundException: Zend\ServiceManager\ServiceManager::get は、テストからdoctrine.entityman ager.orm_default のインスタンスを取得または作成できませんでした。

私はこれを理解していません、助けてください!

4

1 に答える 1

19

やっと手に入れた!! module / Album/test内のTestConfig.php.distをに変更しました

<?php
return array(
    'modules' => array(
        'DoctrineModule',
        'DoctrineORMModule',
        'Album',
    ),
    'module_listener_options' => array(
        'config_glob_paths'    => array(
            '../../../config/autoload/{,*.}{global,local}.php',
        ),
        'module_paths' => array(
            'module',
            'vendor',
        ),
    ),
);

つまり、基本的に2つの欠落しているモジュール、DoctrineModuleとDoctrineORMModuleを追加しただけで、phpunitコマンドはエラーを表示しませんでした。

それが他の人に役立つことを願っています。

于 2012-12-26T08:42:41.810 に答える