Eclipse PDT & PHPUnit? - PullRequest
       48

Eclipse PDT & PHPUnit?

31 голосов
/ 08 июня 2009

Есть ли интеграция PHPUnit с Eclipse PDT?

Если нет, то планируете ли вы это сделать?

Ответы [ 13 ]

44 голосов
/ 03 июля 2010

См. Eclipse Plugin PHP Tool Integration (PTI) , который обеспечивает интеграцию следующих функций для Eclipse:

  • PHP_CodeSniffer
  • PHPUnit
  • PHP Зависит
  • Детектор копирования / вставки PHP

Обновление сайтов (Справка - Установка программного обеспечения - Добавить ...):

Последний стабильный выпуск: http://www.phpsrc.org/eclipse/pti/

Версия для разработки: http://www.phpsrc.org/eclipse/pti-dev/

23 голосов
/ 02 декабря 2009

Мы разработали плагин Eclipse под названием MakeGood , который объединяет PHPUnit и другие тестовые среды с Eclipse PDT .

MakeGood - это непрерывный тестовый прогон для запуска модульных тестов на Eclipse PDT .

MakeGood обеспечивает быструю обратную связь с помощью автоматизированных рабочих процессов для запуска тестов, отслеживания сбоев и ошибок и фатальных ошибок. Это поможет разработчикам выполнить Test Driven Development (TDD) и Непрерывное тестирование .

Для получения дополнительной информации посетите наш веб-сайт: https://github.com/piece/makegood/wiki

A screenshot of MakeGood

7 голосов
/ 15 июля 2009

Можно интегрировать PHPUnit с PDT простым способом (эти настройки не являются общими, но должны быть хорошей отправной точкой).

  1. Выберите «Выполнить»> «Внешние инструменты»> Конфигурации внешних инструментов
  2. Создать новую программу
  3. Установите местоположение, чтобы указать на ваш исполняемый файл (/ usr / bin / phpunit включен Linux)
  4. Установите рабочий каталог для использования переменная $ {workspace_loc}
  5. Установите Аргументы в $ {Resource_path}

Теперь выберите «Выполнить»> «Внешние инструменты»> «PHPUnit», чтобы выполнить выбранный тестовый файл. Это просто выполняет phpunit и отправляет STDOUT на терминал Eclipse. Просто, но эффективно.

Впоследствии вы можете использовать значок с зеленой стрелкой и красной панелью инструментов для запуска PHPUnit без навигации по меню.

5 голосов
/ 28 июля 2009

(отказ от ответственности: я абсолютно не являюсь разработчиком проекта, о котором я говорю здесь; только пользователь ^^ (И, поскольку я не знаю JAVA, мне было бы довольно сложно помочь добавив код ... Вот мой способ помочь :-)))

В настоящее время ведется работа над этой стороной: несколько недель назад (возможно, не более двух недель) , первый проект по интеграции phpunit в Eclipse был выпущен:

Что он делает:

  • позволяет запускать тесты phpunit из eclipse
  • и получите некоторую «визуальную подсказку» о том, что происходит
  • , что в некотором роде лучше / более удобно для пользователя, чем подход, предложенный Себастьяном в вики phpunit.

Чтобы посмотреть скриншот, см. http://code.google.com/p/phpunit4eclipse/wiki/j2phpUnitWrapper


К сожалению, это не (пока?) , разработанный как плагин Eclipse:

  • это отдельный проект JAVA, который запускает phpunit
    • или что-то в этом роде, насколько я могу судить ...
  • , что означает:
    • не так хорошо интегрирован в Eclipse, как мог
    • самое главное, когда вы дважды щелкаете по классу / методу теста, вы не получаете доступ к этому классу / методу (потому что результат тестов показан проектом JAVA и классом теста / метод в другом, PHP, проект)
  • все еще довольно сложно установить:
    • Мне не удалось установить его в Eclipse PDT
    • Мне пришлось установить «Eclipse IDE для разработчиков Java», а затем установить плагин PDT в этом (который работает нормально, но не «просто»)

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


Несколько лет назад для этого проекта была создана группа Google: http://groups.google.com/group/phpunit4eclipse-user/

В настоящее время оно пусто , но я уверен, что это помогло бы, если бы некоторые люди присоединились, поделились своими мыслями, а почему бы и не помогли!

5 голосов
/ 09 июня 2009

Себастьян Бергманн приблизился к ФДТ еще в 2006 ... но без очевидного результата.
И его последние записи в его блоге упоминают только PHPEdit 2.12 и Zend Studio .

Единственной платформой тестирования, официально документированной на стороне PDT, является "PDT Testing Framework" , и она, похоже, не поддерживается активно ...

Итак, нет. Похоже, что в ближайшее время не планируется активно интегрировать PHPUnit в PDT.

3 голосов
/ 18 февраля 2013

Существует определенная интеграция для Eclipse PDT и PHPUnit. PHPSRC и MakeGood работать хорошо, хотя я фанат MakeGood для phpunit phpsrc поставляется с другими вкусностями, как CodeSniffer. Я установил PHPUnit CodeSniffer Standard на github , который проверяет качество тестов phpunit, которые я могу запустить с помощью плагина Eclipse PHP Tools CodeSniffer. Обновления для нового пакета phpunit, такие как setUp и tearDown.

проверяет наличие утверждений в тестах. Что-то, что разработчики любят пропускать, когда пытаются соответствовать показателям покрытия кода no assertions in test

Обеспечивает, чтобы в каждом тесте было не более 1 утверждения. A Лучшая практика too many tests

Настройка PDT в Eclipse не проста.

В нем много мелких деталей. Вот шаги высокого уровня.

pear clear-cache
pear upgrade pear
pear update-channels
pear upgrade --alldeps -f 
pear channel-discover pear.phpunit.de
pear channel-discover pear.symfony-project.com
pear channel-discover components.ez.no
pear install --alldeps phpunit/PHPUnit

[Xdebug]

zend_extension = "C:\xampp\php\ext\php_xdebug-2.2.1-5.4-vc9.dll"
xdebug.remote_enable=1
xdebug.remote_handler="dbgp"
xdebug.remote_mode="req"
xdebug.remote_port=9000    
xdebug.remote_host = "127.0.0.1"
xdebug.remote_log="C:\xampp\php\logs"

Мне потребовалось почти 3 дня, чтобы наконец все сделать правильно, поэтому я собрал видеоурок

Удачи!

2 голосов
/ 06 февраля 2012

На Eclipse Marketpalce есть плагин, который теперь называется PTI PHP Tool Integration.

http://www.phpsrc.org/

0 голосов
/ 03 октября 2016

Для всех, кто использует composer на unix-подобных машинах (установлены eclipse и xdebug):

cd <project-root>
ln -s vendor/bin/phpunit phpunit.php

Откройте eclipse, откройте конфигурацию запуска / отладки, создайте новую конфигурацию отладки и выберите phpunit.php в качестве файла для отладки. Продолжите настройку как обычно, установите точки останова, вот и все.

0 голосов
/ 30 апреля 2012

После ответа @DavidWinterbottom (Eclipse Indigo):

  1. Выберите Выполнить -> Внешние инструменты -> Конфигурации внешних инструментов

  2. Создать новую программу

  3. Установите расположение, чтобы указать на исполняемый файл (/usr/bin/phpunit в Linux или путь к phpunit.bat в Windows)

  4. Установите для аргументов абсолютный путь к вашей папке phpunit (C:\phpproject\testunit)

Я не мог заставить его использовать ${project_loc} или ${project_path}.

0 голосов
/ 26 декабря 2010

Использование phpunit из Ant также возможно, и Ant изначально поддерживается Eclipse. Просто добавьте новый <exec executable="phpunit"> в цель и вуаля, вы можете использовать phpunit в eclipse, через ant.

...