27/11/2008 18:20
El Bruno
[VSTS2010] Novedades en el IDE que nos permiten ser TDD Compliant

Buenas
ya bastante tiempo escribí sobre como aprovechar a Microsoft Visual Studio 2008 y Team Foundation Server 2008 para realizar acciones de Integración Continua y acercarnos un poco a Test Driven Development. Lamentablemente, el IDE de Microsoft Visual Studio 2008 carecía de algunas herramientas para poder trabajar en un modo TDD al 100%.
Visual Studio Team System 2010 incorpora muchas novedades y entre ellas la capacidad de trabajar en un contexto dirigido por pruebas. El siguiente ejemplo, muestra de una forma muy simple como podemos aprovechar las nuevas capacidades del IDE para alcanzar este objetivo.
Tutorial
1. En primer lugar creamos un proyecto de Test. Para este ejemplo, he escogido C# 4.0 como lenguaje y lo he llamado DemoTestProject
2. Este proyecto se crea inicialmente con una clase llamada UnitTest1.cs a la que renombraremos por CustomerManagerTest.cs.
3. A continuación dentro de la clase CustomerManagerTest.cs renombraremos el test TestMethod1 por TestValidateCustomerAddress.
[TestMethod]
public void TestValidateCustomerAddress()
{
//
// TODO: Add test logic here
//
}
4. Lo siguiente que necesitamos en nuestro test es crear un objeto de un tipo que todavía no existe, supongamos que deseamos una clase para validaciones de cliente llamada CustomerValidation. Como podemos ver en la siguiente imagen, al no existir esta clase, obviamente el compilador nos muestra un error.
5. Es en este punto donde el nuevo IDE nos comienza a ayudar un poco, ya que si notamos el smartTag que nos aparece debajo del error podremos ver las siguientes opciones (para mostrar las opciones podemos utilizar la combinacion CTRL+.)
6. Donde la opción [Generate Class for CustomerValidation] generará una clase llamada CustomerValidation dentro del proyecto actual, y la 2da opción [Generate Other…] nos permite seleccionar otro tipo de opciones.
7. Lamentablemente en esta release todavía no nos permiten seleccionar una opción al estilo “New Project in C#”, para crear la clase dentro del mismo. Asi que sin elegir ninguna opción crearemos un nuevo proyecto de tipo biblioteca de clases en C# llamado DemoTest y volviendo a nuestro test podremos ver que ya tenemos la opción de agregar la clase dentro del nuevo proyecto.
8. Una vez generada la clase, automáticamente se agrega la referencia al nuevo proyecto en nuestro proyecto de test y ya podremos ver que nuestro código compila correctamente. Pero esto no es todo, si seguimos nuestro ejemplo, donde nuestra prueba debe validar una dirección de mail, tal vez querramos agregar un código similar al siguiente:
9. Como vemos que el mismo no compila, podemos volver a la opcion CTRL+. para desplegar el menu de opciones y de esta forma automáticamente generar la implementación de la función que queremos testear.
10. Finalmente, una vez implementado, podremos ver que nuestro test ya compila correctamente y que por otra parte tenemos generada la “interfaz inicial” que nos permite seguir escribiendo nuestras pruebas.
Saludos @ Here
El Bruno
Crossposting from
ElBruno.com
Archivado en: VSTS,Visual Studio 2010
Comparte este post: