En las próximas días/semanas/meses/años/lustros... voy a hablaros del tema de las pruebas en visual studio, no quiere decir que solo publique sobre esto, pero si que es verdad que para mi es una asignatura pendiente que tengo siempre ahí, y es la mejora de calidad y robustez de las aplicaciones que desarrollo.
La vida como programador me ha demostrado que nunca todas las pruebas son suficientes, que siempre hay millones de flujos, que siempre va a llegar alguien y le va a dar al botón que tu le diste 100 veces en otro orden y que la aplicación petará o "HASSSEEE PAAAAM!!!!" en algún sitio.
En este caso hay metodologías, técnica, herramientas... como presentación a está sección voy a hablaros sobre una herramienta, que seguramente todos los que leemos este foro conocemos, pero que muchos no aprovechamos todo lo que nos ofrece y es "Visual Studio" TACHAAAAAN!! que sorprendidos? Pues visual studio tiene una herramienta potentisima para por ejemplo hacer pruebas unitarias.
Para ver como funciona a modo básico (iremos ampliando en próximos post) vamos a crear una pequeña aplicación de consola en visual estudio y vamos a pegar el código siguiente:
private string HelloWorldTest(string name)
{
name = "Bienvenido " + name;
return name;
}
Después de está maravilla de código mis neuronas han quedado destrozadas, y no me apetece pensar que tengo que probar, ya que el código tiene una complejidad que me requeriría pensar durante un par de semanas como probarlo, así que voy a darle al botón derecho sobre la definición de la función,
voy a pulsar crear pruebas unitarias en el cuadro de dialogo vamos a pulsar aceptar en próximos post iremos avanzando las configuraciones, le damos un nombre al proyecto que va a crear y pulsamos el botón crear.
Una vez generado nos muestra el método de test, si os dais gueta, se definene las variables espected, y name, y en el assert equeal se comparan los resultados, si ejecutamos en este momento esto nos generará un error.
/// <summary> /// Una prueba de HelloWorldTest ///</summary> [TestMethod()]
[DeploymentItem("WFFortTestingUnitTEst.exe")]public void HelloWorldTestTest()
{
Form1_Accessor target = new Form1_Accessor(); // TODO: Inicializar en un valor adecuado
string name = string.Empty; // TODO: Inicializar en un valor adecuado string expected = string.Empty; // TODO: Inicializar en un valor adecuado string actual;
actual = target.HelloWorldTest(name);
Assert.AreEqual(expected, actual);
Assert.Inconclusive("Compruebe la exactitud de este método de prueba.");
}
string expected = "Bienvenido ";
Beuno esto es todo por hoy, seguiremos avanzando en próximos días.