Me preguntaba si alguien que tenga experiencia en estas dos cosas puede arrojar algo de luz sobre la diferencia significativa entre los dos, en su caso.
¿Alguna fortaleza específica de cada uno que lo haga adecuado para cualquier caso específico?
Me preguntaba si alguien que tenga experiencia en estas dos cosas puede arrojar algo de luz sobre la diferencia significativa entre los dos, en su caso.
¿Alguna fortaleza específica de cada uno que lo haga adecuado para cualquier caso específico?
Respuestas:
Esta pregunta está bastante anticuada, pero como todavía está recibiendo tráfico y respuestas, aunque declaro mi punto aquí nuevamente, así que ya lo hice en otras preguntas (más nuevas).
Estoy realmente desconcertado de que SimpleTest todavía se considere una alternativa a phpunit. Tal vez solo estoy mal informado, pero por lo que he visto:
web interface to phpunit tests
.Todavía no he visto ningún argumento a favor de SimpleTest. Ni siquiera es más sencillo de instalar ya que PHPUnit está disponible a través de pear:
y la "primera prueba" se ve más o menos igual.
A partir de
PHPUnit 3.7
esto, es aún más fácil instalarlo simplemente usando elPHAR Archive
o para Windows simplemente descargando el phar y ejecutándolo:
o al usar el compositor compatible instalar formas como
a tu compositor.json.
Para todo lo que desee probar, PHPUnit tendrá una solución y podrá encontrar ayuda prácticamente en cualquier lugar (SO, #phpunit irc channel en freenode, casi todos los desarrolladores de php;))
Por favor corrígeme si he dicho algo mal u olvidado algo :)
Descripción general de las herramientas de prueba de PHP
Video: http://conference.phpnw.org.uk/phpnw11/schedule/sebastian-bergmann/
Diapositivas: http://www.slideshare.net/sebastian_bergmann/the-php-testers-toolbox-osi-days-2011
Menciona cosas como Atoum que se autodenomina: "¡Un marco de prueba de unidad simple, moderno e intuitivo para PHP!"
La divulgación completa
Originalmente escribí esta respuesta en enero de 2011, donde no tenía afiliación con ningún proyecto de PHP Testing. Desde entonces me convertí en colaborador de PHPUnit.
fuente
include
usar los archivos SimpleTest .PHP (como han explicado otros). para los programadores profesionales construir a cabo su propio entorno de pruebas PHPUnit suena difícil de superar, pero si la integración de un sistema de prueba en una aplicación de código abierto basado en PHP donde "promotores" de la aplicación pueden ser, en el mejor (lo que llamo) "programadores ocupacionales" a continuación, la simplicidad de SimpleTest tiene un atractivo real, para mí de todos modos. FWIWPrefiero PHPUnit ahora, pero cuando comencé usé SimpleTest ya que no siempre tenía acceso a la línea de comando. SimpleTest es bueno, pero lo único que realmente tiene sobre PHPUnit, en mi opinión, es el corredor web.
Las razones por las que me gusta PHPUnit son que se integra con otras herramientas de desarrollo de PHP, como phing (como lo hace SimpleTest), phpUnderControl y Xinc . A partir de la versión 3.0, tiene soporte de burla , se está desarrollando activamente y la documentación es excelente.
Realmente, la única forma de responder a esta pregunta es probar ambos por un tiempo y ver cuál se adapta mejor a su estilo.
EDITAR: Phing ahora también se integra con SimpleTest.
fuente
Sin embargo, podría entender fácilmente cómo instalar SimpleTest.
(Hasta donde puedo recordar, las instrucciones para PHPUnit dijeron algo como "instalarlo a través de PEAR y no daremos ninguna instrucción sobre cómo hacerlo de otra manera") vea:
Para SimpleTest , simplemente descárguelo y apúntelo desde su código.
Tan simple ganó para mí.
fuente
Baphled tiene un buen artículo sobre SimpleTest vs PHPUnit3 .
fuente
La mitad de los puntos mencionados en la respuesta aceptada simplemente no son ciertos:
SimpleTest tiene
La baja:
fuente
Encontré que SimpleTest era incluso más fácil de configurar que PHPUnit. Simplemente extráigalo y listo. Una ventaja de esto es si está trabajando en más de una máquina, ya que puede almacenar todo el marco de prueba de la misma manera que su código fuente y, por lo tanto, saber que está usando el mismo código de marco. Especialmente si lo modifica de alguna manera.
Entonces, diría que una ventaja de SimpleTest es que es muy ligero y portátil.
SimpleTest también se entrega con una GUI HTML muy simple, que es bastante fácil de ampliar si lo desea. Hasta donde yo sé, PHPUnit no incluye una GUI HTML, pero hay GUI disponibles para descargar, como Cool .
fuente
Bueno, hice un corredor de caso de prueba de interfaz de usuario basado en web phpUnit y lo hice disponible en sourceforge. Utiliza ajax y también tiene una interfaz bastante buena si quieres darle una oportunidad, compruébalo en sourceforge. El nombre del proyecto es phpunitwebui y el sitio web es http://phpunitwebui.sourceforge.net/
fuente
Como se ha señalado, es principalmente una opción de preferencia, ya que ambos ejecutarán las pruebas que usted escriba para ello e informarán los resultados.
La interfaz de usuario web más simple es muy útil, pero a veces también puede ser engorrosa. En mi proyecto actual, habría tenido que poner más trabajo en un sistema para hacer que mi aplicación (una API) funcione con la interfaz web (configurar apache correctamente, copiar archivos a la raíz public_html, etc.) de lo que hubiera sido simplemente ejecutar phpunit desde el espacio de trabajo de eclipse. Por lo tanto, elijo PHPUnit. Además, el uso de PEAR fue una gran ventaja, ya que no es necesario realizar un seguimiento manual de las actualizaciones. Simplemente ejecute de
pear upgrade
vez en cuando y PHPUnit se mantendrá actualizado.fuente
Esto es desde el punto de vista de un desarrollador PHP muy informal:
Me tomó dos días comprender PHPUnit, principalmente tratando de depurar bajo Eclipse que finalmente renuncié.
Me llevó dos horas configurar Simpletest, incluida la depuración en Eclipse.
Tal vez encuentre las deficiencias de Simpletest en el futuro, pero hasta ahora hace lo que necesito: TestClasses, objetos simulados, depuración de código de prueba e interfaz web para una instantánea rápida de la situación.
De nuevo: esto desde el punto de vista de un usuario PHP muy informal (ni siquiera desarrollador :-)
fuente
No he verificado la Prueba simple durante un tiempo, la última vez que tenía un complemento de eclipse, que es un factor importante para mí, pero no se ha actualizado durante mucho tiempo. Sebastian Bergmann todavía está trabajando muy activamente en PHPUnit, pero aún carece de un buen complemento para eclipse, pero está incluido para el nuevo Zend Studio.
fuente
Esta pregunta es antigua, pero quiero agregar mi experiencia: PHPUnit parece ser el estándar ahora, pero si trabaja con un sistema heredado que utiliza muchas variables globales, puede quedarse atascado desde el principio. Parece que no hay una buena manera de hacer pruebas con variables globales en PHPUnit, parece que tiene que configurar sus variables a través de $ GLOBALS, lo cual NO ES BUENO si tiene toneladas de archivos configurando variables globales en todas partes. Bien, algunos pueden decir que el problema está en el sistema heredado, pero eso no significa que no podamos hacer pruebas en dicho sistema. Con SimpleTest tal cosa es simple. Supongo que si PHPUnit nos permite incluir un archivo globalmente, no dentro de ningún alcance de clase / función, entonces tampoco sería un gran problema.
Otra solución prometedora es http://www.enhance-php.com , se ve bien :)
fuente
<phpunit backupGlobals="false">
en la configuración XML y nunca tuve problemas con los globales en las pruebas ...global $xxx
y todas sus combinaciones, antes de intentar--no-globals-backup
y de repente ver todo trabajando como se esperaba. : Dcuando hay miles de funciones para probar de una vez, phpunit es el camino a seguir, la prueba simple se queda corta ya que se basa en la web.
Todavía estoy usando web simple para pruebas a pequeña escala.
Pero ambos son buenos
fuente