2016-10-24 6 views
0

У меня возникли проблемы с Codeception с использованием Yii2. Я только что обновил до Yii 2.0.10 и использовал это guideCodeception Test Unit не найден

Я получаю ошибку: Codeception\Test\Unit not found in vendor\codeception\base\shim.php. Если я ocmment этого класса, следующие один сбой, который:

namespace Codeception\Module { 

class Symfony2 extends Symfony { 
} 

Это сделано Что у: Я создал файл test.php и поместить его в моей конфигурации папке:

<?php 
// config/test.php 
$config = yii\helpers\ArrayHelper::merge(
require(__DIR__ . '/main.php'), 
require(__DIR__ . '/main-local.php'), 
[ 
'id' => 'app-tests', 
'components' => [ 
    'db1' => require(__DIR__ . '/db.php'), 
] 
] 
); 
return $config; 

codeception.yaml

actor: Tester 
paths: 
tests: tests 
log: tests/_output 
data: tests/_data 
helpers: tests/_support 
settings: 
bootstrap: _bootstrap.php 
memory_limit: 1024M 
colors: true 
modules: 
config: 
    Yii2: 
     configFile: 'config/test.php' 

unit.suite.yml

class_name: UnitTester 
modules: 
enabled: 
    - Asserts 
    - Yii2: 
     part: [orm, email] 

Я совершенно новой для Codeception, так что не уверен, что я сделал неправильно

ответ

0

В этой ситуации, как я повышен с 2.0.9 -> 2.0.10. Я должен был удалить композитор yiisoft/yii2-codeception, codeception/codeception, codeception\verify, codeception\specify, codeception\base.

Я скопировал тест folder structure более. Изменил мой composer.json в корневом проекте включают:

"require-dev": { 
    "yiisoft/yii2-debug": "*", 
    "yiisoft/yii2-gii": "*", 
    "yiisoft/yii2-faker": "*", 
    "codeception/base": "^2.2.3", 
    "codeception/verify": "~0.3.1", 
    "codeception/specify": "~0.4.3" 
}, 

Я также добавил test.php и test_db.php файлы/конфигурации

1

Насколько я помню, что Вам не нужно делать ничего, кроме php vendor/bin/codecept run в директории, где у вас есть codeception.yaml.

Обратите внимание, что путь vendor/bin/codecept может отличаться в вашем случае. Вообще говоря, Codeception будет анализировать вашу конфигурацию и делать магию.


Это не нужно знать, но если вы заинтересованы: он анализирует конфигурацию и устанавливает отношения между пространствами именами и путями динамически с помощью собственной PSR-4 реализации автозагрузчика совместимого класса.

Посмотрите здесь - https://github.com/Codeception/Codeception/blob/2.2/src/Codeception/Configuration.php#L214 и здесь https://github.com/Codeception/Codeception/blob/2.2/src/Codeception/Util/Autoload.php

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

  • Нет связанных вопросов^_^