Я работаю в OSX 10.11
Я пытаюсь настроить PHPUnit, MAKEGood и Xdebug с Eclipse.
Выполняется XDebug. Я могу запустить тесты PHPUnit из консоли.
Но теперь настройка MakeGood намного сложнее, чем я ожидал.
Мои исполняемые файлы PHP
Нужно ли добавлять грушу в Eclipse->Preferences->PHP->Libraries
? Я не уверен, потому что я установил PHPUnit с помощью Brew.
brew install homebrew/php/phpunit
Но снова я попытался включить PEAR.
Я дал путь как usr/local/bin
потому что, когда я пытаюсь использовать which pear
в терминале, она будет выводиться как
/usr/local/bin/pear
И в моих свойствах проекта в PHP-> include path я добавил вышеупомянутую библиотеку PEAR.
все еще из Makegood ошибка приходит как
PHPUnit_Framework_TestCase class is not available. Fix..
Я много пробовал, Ex: –
reinstalling pear rm .metadata/.plugins/org.eclipse.dltk.core.index.sql.h2/* restart Eclipse Restart Computer change pear library path
На самом деле я не уверен, что я делаю неправильно. Даже я не уверен, что мне нужна библиотека груши.
Любая помощь приветствуется. Заранее спасибо .
MakeGood и Composer нуждаются в некоторых попытках заставить их работать
Вы можете захотеть
Более поздние версии PHPUnit, возможно, выполнены с помощью композитора.
Сначала установите композитор:
curl -sS https://getcomposer.org/installer | php
См. https://phpunit.de/manual/current/en/installation.html.
затем установите phpunit
php composer.phar require "phpunit/phpunit=4.8.*"
теперь тест из командной строки
vendor/phpunit/phpunit/phpunit.php test/MakeGoodTest.php
используя файл MakeGoodTest.php ниже. Результат должен быть:
PHPUnit 4.8.21 by Sebastian Bergmann and contributors. Warning: Deprecated configuration setting "strict" used . Time: 86 ms, Memory: 4.50Mb OK (1 test, 5 assertions)
Недавние выпуски MakeGood поддерживают пользователя установленного phpunit.
В проекте Eclipse создайте проект «makegood», который содержит вашу установку композитора, test / MakeGoodTest.php, MakeGoodPreload.php и phpunit.xml.
Щелкните правой кнопкой мыши свойства проекта и перейдите на вкладку «MakeGood». на вкладке PHPUnit добавьте phpunit.xml, а на вкладке General установите Preload Script в MakeGoodPreload.php.
Теперь вы можете открыть MakeGoodTest.php в редакторе и щелкнуть правой кнопкой мыши, чтобы получить «Run Tests in class …».
запуск должен дать вам:
PHPUnit 4.8.21 by Sebastian Bergmann and contributors. Warning: Deprecated configuration setting "strict" used . MakeGood [x] [32mPush and pop[39m Time: 192 ms, Memory: 8.75Mb OK (1 test, 5 assertions)
phpunit.xml
<phpunit backupGlobals="true" backupStaticAttributes="false" cacheTokens="false" colors="false" convertErrorsToExceptions="true" convertNoticesToExceptions="true" convertWarningsToExceptions="true" forceCoversAnnotation="false" mapTestClassNameToCoveredClassName="false" printerClass="PHPUnit_TextUI_ResultPrinter" processIsolation="false" stopOnError="false" stopOnFailure="false" stopOnIncomplete="false" stopOnSkipped="false" testSuiteLoaderClass="PHPUnit_Runner_StandardTestSuiteLoader" strict="false" verbose="false"> </phpunit>
MakeGoodPreload.php
<?php // This is a preload script to be used with // the Eclipse makegood continuous integration plugin // see https://github.com/piece/makegood/releases error_reporting(E_ALL); $loader = require 'vendor/autoload.php';
Тест / MakeGoodTest.php
<?php class MakeGoodTest extends PHPUnit_Framework_TestCase { public function testPushAndPop() { $stack = array(); $this->assertEquals(0, count($stack)); array_push($stack, 'foo'); $this->assertEquals('foo', $stack[count($stack)-1]); $this->assertEquals(1, count($stack)); $this->assertEquals('foo', array_pop($stack)); $this->assertEquals(0, count($stack)); } } ?>