2012-04-11 3 views
2

Когда я создаю контроллер с помощью следующих Zend_Tool команды:PHPUnit 3.6.10 + ZendFramework 1.11.11 + NetBeans 7.1

create controller NameController

... создает NetBeans новый контроллер успешно. НО, он посылает сообщение в окне вывода:

PHPUnit is required in order to generate controller test stubs.

Как получить Netbeans автоматически создать класс с тестирования PHPUnit? Я искал сеть и тысячи решений до сих пор не в состоянии решить ...

Важные примечания:

  • уже установили грушу
  • Уже установлен PHPUnit
  • Уже включены «PHPUnit» в include_path
  • Создал файл и включает zf.ini тоже в include_path
  • Параметры уже настроены netbeans, где я сообщил каталог phpunit.bat.

Это ошибка в NetBeans?

См:

http://img545.imageshack.us/img545/262/001hxw.jpg

http://img855.imageshack.us/img855/8918/002jfy.jpg

http://img196.imageshack.us/img196/378/003sfu.jpg http://img196.imageshack.us/img196/378/003sfu.jpg

http://img834.imageshack.us/img834/1858/004qc.jpg http://img834.imageshack.us/img834/1858/004qc.jpg

http://img444.imageshack.us/img444/1020/005jx.jpg http://img444.imageshack.us/img444/1020/005jx.jpg

+0

ну, я вот-вот задал бы тот же вопрос :) – Songo

+0

zend Framework 1 не совместим с phpUnit 3.6, вам придется перейти на 3,5 http://dustyreagan.com/downgrade-phpunit-3-6- до 3-5-15/ – max4ever

+0

@ max4ever ZF 1.11.11 совместим с phpUnit 3.6.10. Я сделал тест здесь, и это сработало. – Vegetus

ответ

0

Я нашел решение.

В C:/пользователь/вами профиля пользователя/.zf.ini, конфигурационный файл был так:

php.include_path = ".C:/wamp/bin/php/php5.3.8/pear/PHPUnit;C:/Program Files/NetBeans 7.1/php/zend;C:/wamp/apps/ZendFramework/library" basicloader.classes.0 = "NetBeansCommandsProvider"

Я взял php.include_path, оставляя файл следующим образом :

basicloader.classes.0 = "NetBeansCommandsProvider"

Ну .. это сумасшествие и не понял, потому что он работал хорошо для меня.

Примечание: Обратите внимание, что настройки уже должны быть установлены include_path в php.ini в C: \ WAMP \ Bin \ PHP \ php5.3.8 и C: \ WAMP \ Bin \ Apache \ Apache2.2.21 \ Bin

Спасибо всем!

1

Я не думаю, что это так много, как вопрос Zend_Tool (zf.bat).
Возможно, вы работаете с проектом, который был создан Zend_Tool, прежде чем phpunit был установлен правильно.
В этом случае у части или вашего .zfproject.xml нет необходимой информации для использования phpunit.
Netbeans на самом деле ничего не делает с Zend_Tool другим, чтобы предоставить графический интерфейс.
Хотелось бы, чтобы у меня было быстрое решение этой проблемы, но я этого не делаю. Я решил это в прошлом:

  1. Убедитесь PHPUnit правильно установлен и работает в Netbeans

Теперь у вас есть 2 варианта:

  1. Восстановите свой каталог проекта с Zend_Tool и пусть .zfproject.XML файл генерируется с рабочей PHPUnit. (Это хорошо работает с новыми проектами)

  2. Создайте новый проект с Zend_Tool, посмотрите на .zfproject.xml с редактором и изменить .zfproject.xml для вашего проекта, чтобы включить информацию о phpunit. Этот метод может занять немного проб и ошибок, чтобы получить правильные результаты.

Для полноты здесь отрывок из одного из моих .zfproject.xml файлов:

<testsDirectory> 
     <testPHPUnitConfigFile filesystemName="phpunit.xml"/> 
     <testPHPUnitBootstrapFile filesystemName="bootstrap.php"/> 
     <testApplicationDirectory> 
     <testApplicationControllerDirectory> 
      <testApplicationControllerFile forControllerName="Index"/> 
     </testApplicationControllerDirectory> 
     </testApplicationDirectory> 
     <testLibraryDirectory/> 
    </testsDirectory> 

я не нашел способ регенерировать .zfproject.xml файл для отражения изменений в окружающей среде.

Я надеюсь, что кто-то еще проще исправить ...

+0

@Rockford , Спасибо за ваш ответ. Однако ваш код в 'xml' был дополнен на моем _zfproject.xml_, потому что я установил свойства проекта (см. Изображение 4 в моем вопросе). Я следовал вашей процедуре, но не работал для меня. Но теперь мне удалось создать тестовый контроллер PHPUnit только с одной: ** удалить 'php.include_path' в' zf.ini' **. Какая глупость! – Vegetus

+0

Я даже не знал, что zf.ini существует, спасибо за ответ. – RockyFord

Смежные вопросы