domingo, 5 de febrero de 2012

Ejemplo de pruebas unitarias con NUnit



NUnit es una aplicación hermana del famoso  JUnit pero en esta caso enfocado a .NET en lugar de en Java que nos permitirá realizar pruebas a nuestro código.

Lo primero que debemos hacer para realizar este ejemplo será bajarnos la aplicación NUnit dese su sitio oficial y instalarlo.



Una vez instalado el NUnit crearemos un pequeño proyecto en .NET para realizar el ejemplo. Usaremos un formulario como este(Este formulario se utilizara mas adelante en otra entrada):




Ahora crearemos una pequeña  clase que yo he llamado “MisFunciones.cs” que dentro contiene una función llamada “fsumar” para realizar la suma del ejemplo.

    class MisFunciones
  {
      // Función para realizar la suma
      static public  int fsuma(int x, int y)
      {
          return x + y;
      }
   }


Ahora agregamos la referencia a la DLL de NUnit. Para ello si no sabéis como se agrega una referencia en .NET tendréis que abrir el explorador de soluciones de Visual Studio y buscar donde pone “reference” botón secundario y agregar referencia.





La DLL se encuentra en la carpeta de NUnit en un directorio parecido a este  “C:\Program Files\NUnit 2.5.10\bin\net-2.0\framework”

Ahora debemos crear la clase para testear nuestra clase anterior para ellos creamos otra clase que yo he llamado “MisFuncionesTest”.



En esta clase lo primero que haremos será incluir las clases de NUnit con la siguiente sentencia:

   using NUnit.Framework;

NUnit usa etiquetas para realizar sus pruebas las etiquetas que usaremos en este ejemplo será las etiquetas [TestFixture] para indicar que es una clase de prueba y la etiqueta [Test] a la función para indicar que es una función test. Nuestra clase quedaría así:

    
   [TestFixture]
   class MisFuncionesTest
   {
       [Test]
       public void fSumaTest()
       {
       }
   }


Ahora dentro de nuestra función fSumatest() que lo que hace realmente es probar nuestra función fsuma introducimos el siguiente código

   Assert.AreEqual(10, MisFunciones.fsuma(5, 5));


Lo que muestra esta sentencia es que si le pasamos 5 y 5 a la función fsuma() el resultado debe ser 10.

El último paso una vez generado es .exe es abril el NUnit y arrastrar el ejecutable al programa o ir al “Project” y “Add Assembly”.




Le daremos en “RUN” para realizar las pruebas y si todo esta correcto todo saldrá en verde. En caso que no tuviéramos algún error nos mostraría en qué función o clase se encuentra el error.