oxygen - Eclipse PDT y PHPUnit?
framework php eclipse (13)
¿Hay alguna integración de PHPUnit con Eclipse PDT?
Si no, ¿hay algún plan para hacerlo?
Definitivamente hay integración para Eclipse PDT y PHPUnit. tanto PHPSRC como MakeGood funcionan bien, aunque soy fanático de MakeGood para phpunit phpsrc viene con otros extras como CodeSniffer. He ramificado un PHPUnit CodeSniffer Standard en github que valida la calidad de las pruebas de phpunit que puedo ejecutar con el plugin CodeSniffer de Eclipse PHP Tools. Esto tiene actualizaciones para el nuevo paquete phpunit como setUp y tearDown.
se asegura de que haya aserciones en las pruebas. A algunos desarrolladores les gusta omitir cuando intentan cumplir con las métricas de cobertura de código
Se asegura de que no haya más de 1 afirmación por prueba. Una mejor práctica
Configurar PDT en Eclipse no es sencillo.
Hay muchos pequeños detalles involucrados. Aquí están los pasos de alto nivel.
1 actualización de Windows
2 Instalar JRE a. http://www.java.com/en/download/index.jsp
3 Crea una carpeta C: / eclipse / workspace
4 Instalar eclipse pdt
a. http://www.zend.com/en/downloads/thankyou?package=5735 Instale xampp -win32-1.81-vc9
a. http://sourceforge.net/projects/xampp/files/XAMPP%20Windows/1.8.1/xampp-win32-1.8.1-VC9-installer.exe/download6 Instalar phpunit de pera
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
7 Instalar el plugin de Xdebug
a. http://xdebug.org/files/php_xdebug-2.2.1-5.4-vc9.dll
segundo. Ajustes Phpinfo para xdebug
[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"
- 8 Instalar MakeGood a. http://eclipse.piece-framework.com/
Me tomó casi 3 días finalmente lograr todo bien, así que armé un video tutorial
¡Buena suerte!
Es posible integrar PHPUnit con PDT de una manera simple (estas configuraciones no son completamente genéricas, pero deberían ser un buen punto de partida).
- Seleccione Ejecutar> Herramientas externas> Configuraciones de herramientas externas
- Crea un nuevo programa
- Establezca la ubicación para que apunte a su ejecutable (/ usr / bin / phpunit en linux)
- Establezca el directorio de trabajo para usar la variable $ {workspace_loc}
- Establezca los argumentos en $ {resource_path}
Ahora seleccione Ejecutar> Herramientas externas> PHPUnit para ejecutar el archivo de prueba seleccionado. Esto simplemente ejecuta phpunit y envía STDOUT al terminal Eclipse. Simple pero efectivo
Posteriormente, puede usar el icono con una flecha verde y una caja de herramientas roja para ejecutar PHPUnit sin tener que navegar por los menús.
Hay un complemento en Eclipse Marketpalce ahora llamado Integración de herramientas PHP de PTI.
Hemos desarrollado un plugin de Eclipse llamado MakeGood que integra PHPUnit y más frameworks de prueba con Eclipse PDT .
MakeGood es un corredor de pruebas continuo para ejecutar pruebas unitarias en Eclipse PDT .
MakeGood proporciona comentarios rápidos mediante flujos de trabajo automatizados para ejecutar pruebas, rastrear fallas y errores y errores fatales. Esto ayudará a los desarrolladores a realizar pruebas controladas de desarrollo (TDD) y pruebas continuas .
Para obtener más información, visite nuestro sitio web en: MakeGood
Para todos los que usan compositor en máquina como Unix (eclipse y xdebug instalados):
cd <project-root>
ln -s vendor/bin/phpunit phpunit.php
Abra eclipse, abra configuración de ejecución / depuración, cree una nueva configuración de depuración y seleccione phpunit.php
como archivo para depuración. Continúe el resto de la configuración como de costumbre, establezca puntos de interrupción, eso es todo.
Probé PHP Unit en Eclipse y no estaba contento con los problemas de configuración. Cambié a NetBeans PHP IDE. Recomiendo NetBeans PHP IDE para las pruebas PHP Unit. http://www.netbeans.org/kb/docs/php/phpunit.html
Sebastian Bergmann se acercó a PDT en 2006 ... pero sin resultados obvios.
Y sus últimas entradas en su blog solo mencionan PHPEdit 2.12 y Zend Studio .
El único marco de prueba oficialmente documentado en el lado de PDT es el "Marco de prueba de PDT" , y no parece mantenerse activamente ...
Entonces, no. No parece haber ningún plan para integrar PHPUnit activamente en PDT pronto.
Siguiendo la respuesta de @DavidWinterbottom (Eclipse Indigo):
Seleccione Ejecutar -> Herramientas externas -> Configuraciones de herramientas externas
Crea un nuevo programa
Establezca la ubicación para que apunte a su ejecutable (
/usr/bin/phpunit
en Linux, o la ruta aphpunit.bat
en Windows)Establezca los argumentos en la ruta absoluta a su carpeta
phpunit
(C:/phpproject/testunit
)
No pude hacer que ${project_loc}
usando ${project_loc}
o ${project_path}
.
También ejecuto PHPUnit como una herramienta externa como propuso DavidWinterbottom.
Una cosa que también agrego dependiendo del tipo de proyecto es ir a la pestaña Opciones de compilación y seleccionar las primeras opciones después de: "ejecutar el constructor:". Esto activa las pruebas unitarias cada vez que guarda un archivo. Esto es genial para obtener un ciclo de realimentación rojo-verde-refactor muy rápido.
He publicado todos los pasos con capturas de pantalla aquí: http://nicholaslemay.blogspot.com/2010/02/using-eclipse-phpunit-as-automatic.html
También es posible usar phpunit de Ant, y Ant es compatible nativamente con Eclipse. Simple tiene un nuevo <exec executable="phpunit">
en un destino y voilà, puede usar phpunit en eclipse, a través de hormiga.
Tienes e integración de PHPUnit en la parte superior de PDT en Zend Studio. Hay una edición de CE también.
(Descargo de responsabilidad: no soy el desarrollador del proyecto del que estoy hablando aquí, solo un usuario ^^ (Y como no conozco JAVA, sería bastante difícil para mí contribuir contribuyendo código ... Entonces esta es mi forma de ayudar :-)))
Actualmente hay un trabajo en progreso en ese lado: hace unas semanas (tal vez no más de dos semanas) , se ha lanzado el primero de un proyecto de integración de phpunit en Eclipse:
Que hace:
- permite lanzar pruebas phpunit desde eclipse
- y obtener alguna "pista visual" de lo que está sucediendo
- que es, de alguna manera, mejor / más fácil de usar que el enfoque propuesto por Sebastian en la wiki de phpunit.
Para obtener algún tipo de captura de pantalla, consulte http://code.google.com/p/phpunit4eclipse/wiki/j2phpUnitWrapper
Desafortunadamente, no está (¿todavía?) Desarrollado como un plugin de Eclipse:
- es un proyecto separado de JAVA, que lanza phpunit
- o algo así, por lo que puedo decir ...
- lo que significa :
- no tan bien integrado en Eclipse como podría
- lo más importante es cuando haces doble clic en una clase / método de prueba, no te lleva a esa clase / método (porque el resultado de las pruebas se muestra en el proyecto JAVA, y la clase / método de prueba está en otro, PHP, proyecto)
- todavía es bastante difícil de instalar:
- No logré instalarlo correctamente en Eclipse PDT
- He tenido que instalar "Eclipse IDE para desarrolladores de Java" y, a continuación, instalar el complemento PDT en este (que funciona bien, pero no es "fácil")
De todos modos, este es un trabajo en progreso, el proyecto todavía es bastante joven, y es solo un primer paso ...
Hace un tiempo se creó un grupo de google para ese proyecto: http://groups.google.com/group/phpunit4eclipse-user/
Actualmente está vacío , pero estoy seguro de que ayudaría si algunas personas se unieran, dieran su opinión y por qué no, ¡ayudaron!
Ver Eclipse Plugin PHP Tool Integration (PTI) que proporciona la integración de las siguientes características para Eclipse:
- PHP_CodeSniffer
- PHPUnit
- PHP Depende
- PHP Copy / Paste Detector
Actualizar sitios (Ayuda - Instalar software - Agregar ...):
Última versión estable: http://www.phpsrc.org/eclipse/pti/
Versión de desarrollo: http://www.phpsrc.org/eclipse/pti-dev/