Pruebas unitarias sucintamente herramientas de pruebas unitarias

Este es un extracto del eBook de Unit Testing Succinctly, por Marc Clifton, amablemente proporcionado por Syncfusion.

NUnit

NUnit se portó originalmente desde JUnit como un motor de prueba de unidad de código abierto que proporciona un conjunto completo de atributos de prueba, método y variables de prueba, así como aseveraciones de prueba. La documentación para todas las versiones de NUnit se puede encontrar aquí. NUnit todavía se mantiene. La última versión estable en el momento de escribir este artículo es la versión 2.6.2, lanzada el 22 de octubre de 2012..


CSUnit

CSUnit es un motor de prueba de unidades más liviano. Tenga en cuenta que no parece que se mantenga, ya que la última versión fue en marzo de 2009. Ofrece un conjunto de atributos mínimo pero funcional que se utiliza para definir dispositivos de prueba y métodos de prueba..


Proyecto de prueba de Visual Studio

Visual Studio proporciona la capacidad de crear proyectos de prueba directamente en el IDE. Uno de los problemas que el autor descubrió es que la interfaz de usuario ha cambiado entre VS 2008 y VS 2012:

Resultados de prueba de Visual Studio 2008 UI

Resultados de la prueba VS2008 UI

En VS2008, la ejecución de la prueba se ejecuta muy rápidamente y muestra una lista fácil de leer de los resultados de la prueba y, para las pruebas fallidas, el mensaje de error proporciona información sobre por qué falló la prueba.

Además, cuando el proyecto de prueba es el proyecto activo, ejecutar las pruebas (o depurarlas) es lo mismo que con cualquier otra aplicación: puede ejecutarlas con Ctrl + F5 (ejecutar) o F5 (depurar).

Resultados de prueba de Visual Studio 2012 UI

Resultados de la prueba VS2012 UI

En VS2012, el corredor de prueba tarda varios segundos en inicializarse. Peor aún, se obtienen los mensajes asociados a un resultado de prueba. haciendo clic en el fallo. El requisito de clic adicional es un problema de usabilidad importante. Debido a los cambios en la forma en que se muestran los fallos, Visual Studio 2008 se ha utilizado para capturas de pantalla en este libro..

Por último, el corredor de prueba ya no se inicia a través de las mismas teclas de método abreviado que una aplicación normal. En su lugar, el desarrollador debe usar Ctrl + R, A para ejecutar las pruebas. No hay un atajo de teclado asignado para depurar las pruebas unitarias.

Integración de Visual Studio y NUnit

Microsoft proporciona herramientas de integración para NUnit para Visual Studio 2010 (http://visualstudiogallery.msdn.microsoft.com/c8164c71-0836-4471-80ce-633383031099) y 2012 (http://visualstudiogallery.msdn.microsoft.com/6ab922d0 -21c0-4f06-ab5f-4ecd1fe7175d), aunque en el momento de escribir este artículo, el adaptador de prueba NUnit de Visual Studio 2012 es una versión beta 3-2.


Otras herramientas de prueba unitarias

Hay algunos otros motores de prueba que vale la pena mencionar aquí..

MSTest

MSTest (http://msdn.microsoft.com/en-us/library/ms182489 es la versión de línea de comandos del corredor de prueba de Microsoft.

MbUnit / Gallio

MbUnit y Gallio están estrechamente relacionados. Gallio es una plataforma de automatización de pruebas que le permite integrar una variedad de marcos de prueba y herramientas de informes. Esta es una herramienta sofisticada que vale la pena explorar una vez que se familiarice con los principios de prueba de unidades y otros motores..

Microsoft Test Manager

Microsoft Test Manager es una herramienta para planificar, administrar y ejecutar pruebas, ya sea manual o automáticamente. Microsoft Test Manager se integra con el seguimiento de errores, permite escribir notas asociadas con sus pruebas y le permite configurar máquinas de laboratorio virtuales que pueden restablecerse a un estado conocido antes de ejecutar las pruebas.

FsUnit

FsUnit es un motor de prueba que facilita el trabajo con el lenguaje F #.


Marcos de Pruebas de Integración

La prueba de unidad está diseñada para validar la corrección de las unidades de código computacional. La prueba de integración está diseñada para probar el comportamiento de la interfaz de usuario.

NBehave

Para los lectores familiarizados con Ruby, NBehave es un prototipo temprano de características similares a Cucumber en el que se escriben pruebas de comportamiento. Las pruebas están escritas en lenguaje natural, por ejemplo (ambos ejemplos provienen del sitio web de GitHub NBehave):

Escenario: inicio de sesión dado que no estoy conectado Cuando inicio sesión como Morgan con una contraseña SecretPassw0rd Luego debería ver un mensaje "¡Bienvenido, Morgan!"

y los métodos implementan las frases (que, por supuesto, pueden reutilizarse):

[Dado ("No estoy registrado")] public void LogOut () …

Tenga en cuenta que esto no es una prueba unitaria, sino que facilita un paradigma llamado Desarrollo Dirigido por el Comportamiento y se menciona aquí para ilustrar otras formas de prueba que complementan la prueba unitaria..