¿Por qué usar phpunit cuando se pueden usar las pruebas manuales tradicionales?

13

Cuando hago una aplicación web, pruebo mi trabajo en el navegador para ver si recibo algún error y lo soluciono. He hecho aplicaciones complejas y las pruebas de esta manera han sido fáciles y rápidas. He visto muchos videos en YouTube con respecto a phpunit y no puedo encontrar un propósito para ello. ¿Por qué es útil esta biblioteca? Phpunit es más para marcos de trabajo php como cakephp o zend? No uso ningún framework, solo core php. ¿Sería o podría phpunit ser útil para mí? Si es así, ¿cómo?

También hay xdebug pero no estoy seguro de si se relaciona.

    
pregunta Sarmen B. 25.10.2011 - 10:36

4 respuestas

12
  

¿Sería o podría phpunit ser útil para mí? Si es así, ¿cómo?

Sí, definitivamente.

phpunit pertenece a la familia de bibliotecas de prueba xUnit . Utiliza estas bibliotecas para crear pruebas ejecutables automáticamente que verifican el comportamiento de su aplicación. Esto es importante para garantizar, entre otras cosas, que sus cambios no rompan la funcionalidad existente.

Enumerar todos los motivos de las pruebas automatizadas, los diversos tipos y tecnologías serían demasiado. Echa un vistazo a los siguientes enlaces para leer sobre:

respondido por el BenR 25.10.2011 - 11:01
6

Digamos que quería probar su aplicación manualmente cada vez que la implementó. ¿Cómo harías para hacer eso?

Para empezar, puedes hacer una lista de todas las cosas que quieres probar para que no te olvides de probar algo más adelante. Entonces probablemente escribirías los pasos para cada prueba para asegurarte de que los hiciste de la misma manera cada vez. Si no se aseguró de que el proceso de prueba que utilizó fuera consistente, sus resultados no serían consistentes.

Entonces, ahora que tiene la lista de pruebas que necesita realizar, abriría su navegador, leería los pasos de la primera prueba, los realizaría y anotaría el resultado. Repetiría este proceso para cada prueba en su lista.

La cantidad de pruebas que realice seguirá creciendo a medida que su aplicación crezca y a medida que encuentre nuevos errores. Por supuesto, estaría limitado a realizar estas pruebas a velocidad humana, haciéndolas bastante lentas.

La ironía aquí es que al repasar mecánicamente una lista de operaciones, estás calculando. Lo estás haciendo mucho más lentamente que, digamos, una computadora lo haría.

Esto, entre muchas otras buenas razones, es la razón por la que escribimos pruebas unitarias: dejan que la computadora haga la informática para que usted no tenga que hacerlo.

Puedo ejecutar un conjunto completo de pruebas de unidades lo suficientemente rápido para usarlo con frecuencia durante el desarrollo, no solo una vez a la semana antes de la implementación. Esto me permite detectar errores más rápidamente, ahorrándome tiempo y dinero.

Incluso puedo escribir pruebas que predicen el comportamiento del sistema y luego escribir esa conducta (que ya sé que es correcta porque acabo de probarlo), un proceso conocido como Test Driven Development.

    
respondido por el Rein Henrichs 25.10.2011 - 18:28
5

Las pruebas manuales (es decir, hacer clic en la aplicación en el navegador) en realidad se llaman pruebas funcionales. Las pruebas funcionales y las pruebas unitarias son dos métodos diferentes utilizados en el control de calidad. ¿Por qué crees que no puedes usarlos a ambos?

Prueba de unidad se usa para probar si su código funciona como se esperaba (por ejemplo, si su servicio web maneja el error de manera adecuada o si devuelve los resultados como se esperaba).

Cuando haces clic en tu aplicación, estás probando la funcionalidad de tu aplicación.

  

¿Sería o podría phpunit ser útil para mí? Si es así, ¿cómo?

La prueba de la unidad tiene muchos beneficios: puede ser una herramienta muy útil al refactorizar porque puede confirmar que el código funciona como se esperaba. Además, cuando alguien está leyendo su código, puede ser muy útil ver el uso previsto del código en las pruebas unitarias.

    
respondido por el Christian P 25.10.2011 - 10:55
1

¡Sí!

Sí. Absolutamente sí.

En realidad, eso necesita calificación. Los marcos de prueba de unidades como PHPunit son útiles si está escribiendo y manteniendo una aplicación que se espera que otras personas usen.

Las razones por las que es útil la prueba unitaria incluyen

  • Pruebas de regresión para errores específicos que has expuesto, y

  • Las pruebas de unidad de ejecución son mucho más rápidas que las pruebas manuales, por lo que pueden ser mucho más completas.

En la empresa para la que trabajo, escribimos pruebas unitarias antes de escribir el código que las pasa. Esto nos ayuda a producir diseños sanos y comprobables (¡porque tenemos que pensar en lo que escribiremos antes de hacerlo!) Y proporciona una manera fácil de afirmar que nuestro código cumple con los requisitos del usuario.

    
respondido por el user14609 25.10.2011 - 10:51

Lea otras preguntas en las etiquetas