it-swarm.com.ru

Eclipse PDT & PHPUnit?

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

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

31
Gerard

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

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

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

5
VonC

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

  • PHP_CodeSniffer
  • PHPUnit
  • PHP зависит
  • PHP Copy/Paste Detector

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

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

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

44
cirpo

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

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

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

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

A screenshot of MakeGood

23
iteman

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

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

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

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

7
DavidWinterbottom

(заявление об отказе: я абсолютно не являюсь разработчиком проекта, о котором я говорю здесь; я всего лишь пользователь ^^ (и, поскольку я не знаю 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
Pascal MARTIN

Существует определенная интеграция для Eclipse PDT и PHPUnit. оба PHPSRC и MakeGood работают хорошо, хотя я фанат MakeGood для phpunit. phpsrc поставляется с другими вкусностями, такими как CodeSniffer. Я разветвлял PHPUnit CodeSniffer Standard на github , который проверяет качество тестов phpunit, которые я могу запустить с помощью плагина Codeclniffer для Eclipse PHP Tools. Здесь есть обновления для нового пакета 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 дня, чтобы наконец все сделать правильно, поэтому я собрал видеоурок

Удачи!

3
Josh Woodcock

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

http://www.phpsrc.org/

2
Johan Sydseter

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

0
T0xicCode

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

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

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

0
philipp

Следующий ответ @DavidWinterbottom (Eclipse Indigo):

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

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

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

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

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

0
gabi doroftei

Я также запускаю PHPUnit в качестве внешнего инструмента, подобного предложенному DavidWinterbottom. 

В зависимости от типа проекта я также добавляю одну вкладку: выберите вкладку «Параметры сборки» и выберите первые параметры после: «запустить сборщик:». Это вызывает запуск модульных тестов при каждом сохранении файла. Это замечательно, чтобы получить действительно быструю петлю обратной связи красно-зеленого-рефактора.

Я разместил все шаги со скриншотами здесь: http://nicholaslemay.blogspot.com/2010/02/using-Eclipse-phpunit-as-automatic.html

0
Nicholas Lemay