Развертывание Yii2 для содействия - PullRequest
0 голосов
/ 20 января 2019

Я начинающий участник Yii2. Когда я участвую в проекте yiisoft / yii2, совершенно ясно, как развернуть проект и запустить его phpunit-тесты. Но у меня есть несколько вопросов по работе с расширениями:

  1. Сначала я добавляю расширение с composer require. Затем git clone то же расширение внутри моего домашнего каталога. После этого я заменяю первый каталог символической ссылкой, которая указывает на второй. Это довольно удобно, потому что я вижу изменения на сайте, но я больше не могу использовать композитор.

  2. Как запустить тесты расширения? Они часто зависят от класса приложения Yii2, но

$ vendor/bin/phpunit vendor/yiisoft/yii2-elasticsearch/tests/
PHP Fatal error:  Class 'yiiunit\extensions\elasticsearch\TestCase' not found in /var/www/yii2.test/vendor/yiisoft/yii2-elasticsearch/tests/ActiveDataProviderTest.php on line 11
$ vendor/bin/phpunit vendor/yiisoft/yii2-queue/tests/
PHP Fatal error:  Class 'tests\TestCase' not found in /var/www/yii2.test/vendor/yiisoft/yii2-queue/tests/JobEventTest.php on line 22

Должен ли я указать файл конфигурации? Или я должен выполнить эти тесты самостоятельно рамки?

Итак, не могли бы вы поделиться со мной лучшими практиками в этой ситуации?

1 Ответ

0 голосов
/ 21 января 2019

Вы должны запускать эти тесты вне рамок. С точки зрения расширения, yiisoft/yii2 является зависимостью и должно быть установлено в каталог vendor внутри каталога расширения. Короче говоря, вы должны перейти в каталог расширений и позвонить composer install. После этого вы должны получить структуру каталогов, подобную этой:

extension/
├── src/
│   └── ...
├── vendor/
│   ├── yiisoft/
│   │   ├── yii2/
│   │   └── ...
│   └── ...
├──composer.json
└── ...

Затем вы можете запускать тесты непосредственно из каталога расширений (возможно, с помощью команды vendor/bin/phpunit).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...