2011-03-02 28 views
9

¿Cuál es el propósito diferente de ambos? Quiero decir, ¿en qué condición debo hacer cada uno de ellos?UI testing vs unit testing

en cuanto a la condición de ejemplo. si tiene el servidor back-end y varios web frontales, ¿cuál hará? ¿probará primero la prueba del servidor back-end o la prueba UI en la interfaz web? dada la condición, el servidor y las web frontales ya existen, por lo que no es un diseño iterativo para compilar junto con (TDD) ...

Respuesta

20

La prueba de unidades tiene como objetivo probar pequeñas porciones de su código (clases individuales/métodos) de forma aislada del resto del mundo.

Las pruebas de IU pueden ser un nombre diferente para las pruebas de sistema/funcional/de aceptación, donde se prueba todo el sistema para garantizar que hace lo que se supone que debe hacer en circunstancias reales. (A menos que con la prueba UI te refieras a usabilidad/apariencia & prueba de sensación etc., que normalmente está restringida a detalles en la interfaz de usuario.)

Necesitas ambos en la mayoría de los proyectos, pero en diferentes momentos: pruebas de unidad durante el desarrollo (idealmente desde el principio, el estilo TDD), y la prueba de UI un poco más tarde, una vez que realmente tiene alguna funcionalidad completa de extremo a extremo para probar.

Si ya tiene el sistema en ejecución, pero no hay pruebas, prácticamente tiene código heredado. Esfuércese por obtener la mejor cobertura de prueba posible con el menor esfuerzo primero, lo que significa pruebas funcionales de alto nivel. También es necesario agregar pruebas unitarias, pero requiere mucho más esfuerzo y comienza a pagar más tarde.

Lectura recomendada: Working Effectively with Legacy Code.

+0

Y un gordo +1 para hacer referencia trabajando eficazmente con el código heredado. – Steven

+3

¿Qué quiere decir "pruebas funcionales de alto nivel"? ¿Simplemente te refieres a UI Tests? – Minimi

0

La prueba de la unidad siempre debe hacerse. Los tests unitarios están ahí para proporcionar pruebas de que cada UNIDAD (léase: objeto) de su solución técnica entrega los resultados esperados. Para ponerlo muy (quizás demasiado) simple, la prueba del usuario está ahí para verificar que su sistema cumpla con las necesidades y demandas del usuario.