Интеграция Codeigniter 2 с phpspec2

Я хочу интегрировать phpspec2 с CodeIgniter 2. Я успешно установил phpspec, используя композитор, как описано на веб-сайте phpspec . Теперь я хотел бы интегрировать его в мою установку CodeIgniter 2. Я нашел статью AniDear по этому вопросу и сделал все, как описано. Однако, когда я запускаю bin/phpspec я получаю сообщение об ошибке:

 PHP Warning: require(core/Common.php): failed to open stream: No such file or directory in C:\xampp\htdocs\eljotengine\spec\ci_bootstrap.php on line 37 Warning: require(core/Common.php): failed to open stream: No such file or directory in C:\xampp\htdocs\eljotengine\spec\ci_bootstrap.php on line 37 

и так далее. Моя файловая структура выглядит так:

 eljotengine |-application |-sytem |- ... other CI |-spec | |- ci_bootstrap.php 

Я использую xampp в Windows 7. Мой файл ci_bootstrap.php выглядит так, как в вышеупомянутой статье AniDear.

Я попытался изменить пути в файле ci_bootstrap.php (кажется, это проблема), однако это не сильно изменилось.

Любые идеи, как сделать эту работу?

Приветствует 🙂

У меня также проблема с PHPSpec2. Поскольку я только пробовал это с помощью PHPSpec (а не PHPSpec2), я бы предложил вам установить PHPSpec. Просто измените файл composer.json, в строке "phpspec/phpspec2": "*" на "phpspec/phpspec": "*" , затем снова запустите composer update .

Запустите этот phpspec, используя vendor\bin\phpspec.php.bat spec command vendor\bin\phpspec.php.bat spec на пути к проекту, тогда как «spec» – это папка, содержащая файлы спецификаций.

И поскольку вы используете phpspec из своего каталога проектов, я предлагаю изменить содержимое внутри ci_bootstrap.php, как следует

 define('BASEPATH',realpath('system/').'/'); //set absolute path to CI system/ define('APPPATH', 'application/'); //set relative path to CI application set_include_path( get_include_path().PATH_SEPARATOR. realpath(APPPATH).PATH_SEPARATOR. realpath(BASEPATH).PATH_SEPARATOR. 'spec'); //adding 'spec' in path, for easily do require 'ci_bootstrap.php' from inside spec files require BASEPATH.'core/Common.php'; require APPPATH.'config/constants.php'; require BASEPATH.'core/Controller.php';