HomeBrew + PHPUnit + PhpStorm, как заставить работать?

Есть Mac OS X, на нем установлен HomeBrew. Так уже сложилось что мне кажется, что устанавливать нужное ПО проще именно через brew:
brew install phpunit
==> Downloading https://phar.phpunit.de/phpunit-4.0.1.phar
Already downloaded: /Library/Caches/Homebrew/phpunit-4.0.1.phar
/usr/local/Cellar/phpunit/4.0.1: 3 files, 3.1M, built in 2 seconds

Установка прошла хорошо и тестовый файл из консоли отработал отлично:
phpunit ~/Sites/localhost/PHPUnit/test.php
PHPUnit 4.0.1 by Sebastian Bergmann.

..

Time: 35 ms, Memory: 3.25Mb

OK (2 tests, 2 assertions)

А вот при попытке запуска этого же файла из PhpStorm получаем:
PHP Warning:  require_once(PHPUnit/Runner/Version.php): failed to open stream: No such file or directory in /private/var/folders/kg/gxwxzvp15lq254j52xbr4tnr0000gn/T/ide-phpunit.php on line 39
PHP Fatal error: require_once(): Failed opening required 'PHPUnit/Runner/Version.php' (include_path='.:/usr/local/Cellar/php55/5.5.10/lib/php:/usr/local/bin') in /private/var/folders/kg/gxwxzvp15lq254j52xbr4tnr0000gn/T/ide-phpunit.php on line 39


Стоит заметить, что в настройках PhpStorm, в разделе PHP - PHPUnit указан пункт "Load from include path", если его изменить на "Path to pharunit.phar" и указать путь к файлу:
/usr/local/Cellar/phpunit/4.0.1/libexec/phpunit-4.0.1.phar

то нарвемся вот на этот баг, он уже исправлен, но, во-первых, этот подход неудобен тем, что тут путь зависит от версии и после обновления PHPUnit будут проблемы, а во-вторых, версия с исправлением еще не вышла.

Как все же подружить PhpStorm c PHPUnit?
  • Вопрос задан
  • 5025 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Nc_Soft
PhpStorm не совместим с phpUnit > 4
Чтобы все работало достаточно просто закомментить все require_once в CTestCase.php
require_once('PHPUnit/Runner/Version.php');
require_once('PHPUnit/Util/Filesystem.php'); // workaround for PHPUnit <= 3.6.11
require_once('PHPUnit/Autoload.php');

Либо сделать свой класс где нет этих подключений
abstract class TestCase extends PHPUnit_Framework_TestCase
{
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы