Миграции Yii 2 для тестовой базы данных

Я не вижу четкого способа сделать это, хотя я вижу, что это повторяется несколько раз в документации, в частности:

используйте yii migrate tool для обновления тестовой базы данных до последней версии;

нашли в http://www.yiiframework.com/doc-2.0/guide-test-fixture.html#summary (просто приведу пример)

что происходит, независимо от того, как я настраиваю _console.php и _config.php в моем tests/unit папка, если я запускаю инструмент миграции, подбирает основное приложение db:

$ cd tests/unit
$ ../../yii migrate/up
Yii Migration Tool (based on Yii v2.0.0-dev)

No new migration found. Your system is up-to-date.

и да, тестовая база данных настроена правильно (запущенные тесты выдадут ошибку, говоря, что нет таблиц). Очевидно, я могу создать структуру БД сам, но все дело в том, чтобы заставить эту функцию работать так, как она должна.

в настоящее время я использую Basic приложение установлено через composer.

3 ответов


[edit] обновлен ответ, чтобы отразить текущую версию Yii2

просто разместив правильный ответ как я нашел это сам, и я чувствую себя немного глупо, как это было на моих глазах.

есть еще yii командная строка в каталоге тестовой папки, что означает, что вы можете легко сделать:

$ cd tests/codeception/bin
$ chmod a+x yii
$ yii migrate/up

и он будет автоматически использовать базу данных, указанную в tests/codeception/config/config.php.

наслаждайтесь


просто используя yii_test migrate для Yii2.


чтобы применить миграции для тестовой базы данных в Yii2, выполните эту команду в каталоге проекта:

php tests/bin/yii migrate