2016-10-01 2 views
2

я работаю в рамках Zend, я поставил все, но в модульном тестировании я получаю фатальную ошибку:PHPUnit: catchable фатальная ошибка при тестировании

C: \ XAMPP \ HTDOCS \ Зенд \ модуль \ Album \ test> phpunit PHP Catchable fatal error: Arugment 1, переданный Zend \ ServiceManager \ ServiceManager :: __ construct() должен быть из массива типов, заданного объекта, вызванного в C: \ xampp \ htdocs \ zend \ module \ Album \ test \ Bootstrap.php по линии 53 и определены в C: \ XAMPP \ HTDOCS \ Зенд \ vendorframework \ Зенд-ServiceManager \ SRC \ ServiceManager.php на линии 144

Bootstrap.php линия 52-58:

$config = ArrayUtils::merge($baseConfig, $testConfig); 
    $serviceManager = new ServiceManager(new ServiceManagerConfig()); 
    $serviceManager->setService('ApplicationConfig', $config); 
    $serviceManager->get('ModuleManager')->loadModules(); 

    static::$serviceManager = $serviceManager; 
    static::$config = $config; 

ServiceManager.php Линия 144-148:

public function __construct(array $config = []) 
    { 
     $this->creationContext = $this; 
     $this->configure($config = []); 
    } 

Некоторые советы, пожалуйста ???

ответ

1
$serviceManager = new ServiceManager(new ServiceManagerConfig()); 

Arugment 1 passed to Zend\ServiceManager\ServiceManager::__construct() must be of the type array, object given

ошибка говорит вам, что ServiceManager ожидает массив в качестве аргумента. Аргумент, который вы передаете, это new ServiceManagerConfig(), который является объектом.

Это неправильная версия.

zendframework/zend-servicemanager~2.0ServiceManager строительному устройству требуется объект.

В zendframework/zend-servicemanager~3.0 Конструктор ServiceManager требует наличия массива.

Если вы используете zf skeleton application, убедитесь, что вы используете правильную версию.

+0

Благодарим вас за ответ ... так что мне нужно изменить, чтобы исправить это неправильное совпадение ?? –

+0

Если вы используете композитор, убедитесь, что он требует нужной вам версии. Похоже, вам, вероятно, нужна версия ~ 2.0, но это действительно зависит от вашего проекта. –

+0

Я выполнил следующие шаги, и я не могу узнать, где я ошибся https://framework.zend.com/manual/2.0/ru/user-guide/unit-testing.html –

Смежные вопросы