yii2 установить, настроить и запустить тесты кода

Я пишу это, потому что официальная документация yii2 все еще не завершена, а сама документация по кодированию ссылается на официальную документацию yii2.. :).

У меня есть несколько вопросов:

  • В моем корне приложения yii2 есть каталог «tests/codeception», это означает, что codeception уже установлен в моем проекте?
  • в vendor/yiisoft есть еще один каталог codeception "yii2-codeception", что это?
  • в документации сказано создать базу данных yii2_basic_tests и запустить миграцию, но сценарий миграции создает только таблицу «миграции», правильно ли это?
  • интеграция с yii2 предоставляет какой-то веб-интерфейс, или я должен запускать тесты из консольных скриптов?

Кто-нибудь может объяснить мне, как шаг за шагом установить и настроить codeception в базовом приложении yii2?

Спасибо

Алессандро


person AleCat83    schedule 05.02.2015    source источник


Ответы (2)


Я делаю примерно так:

composer global require "codeception/codeception=2.0.*" "codeception/specify=*" "codeception/verify=*"

И далее:

ln -s ~/.composer/vendor/bin/codecept /usr/local/bin/codecept

Тогда я доступен для всего мира

codecept run
person Adam Michna    schedule 19.02.2015
comment
Вы можете использовать Fixtures Yii2 таким образом? - person jeesus; 18.10.2016

Сначала убедитесь, что вы прочитали это пару раз http://www.yiiframework.com/doc-2.0/guide-test-environment-setup.html

После этого фактические тесты легко настроить. Убедитесь, что команда codecept работает так, как написано в последней строке ссылки выше. После установки приложения Yii вам нужно перейти в папку с тестами и запустить

codecept build

для инициализации тестов. Затем запустите

codecept run

для запуска реальных тестов.

Вы можете запустить

codecept run --coverage-html

чтобы получить покрытие кода для вашего проекта.

У меня никогда не было приемочного тестирования, работающего с покрытием кода, но я получил приемку, работающую без покрытия, и модульное и функциональное тестирование с покрытием.

person Mihai P.    schedule 05.02.2015
comment
Спасибо за ваш ответ. Мне удалось установить codeception и запустить первый приемочный тест, но только с официальной командой codeception [php composer.phar require codeception/codeception:* ] вместо упомянутых в yii2 guiide. У него есть каталог codeception (и другой) в корневом каталоге моего поставщика. Это правильно? - person AleCat83; 06.02.2015
comment
Это сработало для меня, но мне пришлось запустить codecept из поставщика/корзины. ../vendor/bin/codecept run Мне также нужно было убедиться, что codeception был установлен в моем композиторе, а не был сделан как часть yii-codeception - person Levi Putna; 10.03.2015
comment
Я создал глобальную ссылку для кодирования, поэтому я могу запускать ее из любого места. Вы тоже можете это сделать, так как это очень удобно. - person Mihai P.; 11.03.2015
comment
Как я уже сказал в ответе, в последней строке ссылки рассказывается, как настроить глобальное кодирование. - person Mihai P.; 11.03.2015