¿Te gustaría aprender Frameworks .NET Empresariales?
Tenemos los cursos que necesitas.¡Haz clic aquí!

NUnit es un framework open source para pruebas unitarias de sistemas realizados con la plataforma Microsof.NET. Sirve al mismo propósito que realiza JUnit en el mundo Java. Consiste en un conjunto de meta atributos y aserciones que permiten probar los métodos de una clase especificada. Fue desarrollado entero en C#, y pertenece a los llamados xUnit que son todos aquellos frameworks de pruebas heredados de JUnit y que por tanto, siguen las normas marcadas por el mismo.

Pruebas Unitarias

Las Pruebas unitarias son una de las formas que tenemos de probar pequeñas e individuales porciones de código. Permiten detectar efectivamente la inyección de defectos durante fases sucesivas de desarrollo o mantenimiento. A través de estas se verifica que cierto módulo o funcionalidad se ejecuta dentro de los parámetros y especificaciones concretadas en documentos tales como los casos de uso y el diseño detallado que proporcionan un contrato escrito que la porción de código debe cumplir. Las Pruebas Unitarias típicamente son automatizadas pero pueden llevarse a cabo de forma manual. Cuando son automatizadas es buena práctica que forme parte del repositorio que contiene al código probado. Se dice que una prueba unitaria es completa o es buena si cumple con los siguientes elementos:

  • Automatizable: no debería requerirse una intervención manual. Esto es especialmente útil para integración continua.
  • Completas: deben cubrir la mayor cantidad de código.
  • Repetibles o Reutilizables: no se deben crear pruebas que sólo puedan ser ejecutadas una sola vez. También es útil para integración continua.
  • Independientes: la ejecución de una prueba no debe afectar a la ejecución de otra.
  • Profesionales: las pruebas deben ser consideradas igual que el código, con la misma profesionalidad, documentación.

Aunque estos requisitos no tienen que ser cumplidos al pie de la letra, se recomienda seguirlos o de lo contrario las pruebas pierden parte de su función.

Características de NUnit

  1. Soporta los lenguajes C#, J#, Visual Basic y C++
  2. Es multiplataforma, pudiendo ejecutarse en Windows y Linux.
  3. Provee de dos tipos de interfaces para ejecutar y administrar las pruebas: una interfaz gráfica y una interfaz de consola
  4. Ofrece una interfaz simple que informa si una prueba o un conjunto de pruebas fallaron, pasaron o se ignoraron.
  5. Presenta dos tipos de funcionamiento diferentes, atributos personalizados que le indican al framework de NUnit cómo interpretar y ejecutar las pruebas implementadas en el método o clase y aserciones que son métodos del framework de NUnit utilizados para comprobar y comparar valores.
  6. Se puede ejecutar desde la consola o a través de una interfaz gráfica.
  7. Se puede integrar con el Visual Studio en cualquiera de sus versiones.
  8. Actualmente soporta los frameworks 1.1/2.0.
  9. También soporta la plataforma Opensource mono.
  10. Soporte de archivos de configuración.
  11. Ejecución de múltiples ensambladores.
  12. Es extensible.
  13. Autodetecta cambios de los ensamblados.

Expansiones de NUnit

  • NUnit.Forms es una expansión al framework núcleo NUnit y es también Opensource. Esto busca concretamente ampliar NUnit para que sea capaz de manejar pruebas de elementos de interfaz de usuario en Windows Forms.
  • NUnit. ASP es una expansión al framework núcleo NUnit y es también open source. Esto busca concretamente ampliar NUnit para que sea capaz de manejar pruebas de elementos de interfaz de usuario en ASP.NET.

Ventajas

Dependiendo del framework empleado podemos encontrar las siguientes ventajas.

  • Automatizadas: por lo cual se hacen repetibles.
  • Fomentan el cambio: ya que permiten probar cambios en el código y asegurar que en estos no se hayan introducido errores funcionales; habilitan el refactoring del código
  • Simplifican la integración: permiten llegar a la fase de integración con un alto grado de seguridad sobre el código.
  • Documenta el código
  • Separa la interfaz de la implementación
  • Los defectos están acotados y fáciles de localizar.
  • Permiten al desarrollador pensar como el consumidor del código y no como el productor.

Elementos de NUnit

Declaración de la Prueba.

Using NUnit.Framework;
Namespace Ejemplo.Pruebas
{
 /// <summary>
 /// Prueba unitaria de la clase <see cref=”Ejemplo.NumeroPositivo”/>.
 /// </summary>
 [TestFixture]
 Public class NumeroPositivoPrueba
{

Elemento de Inicio para la Prueba

[TestFixureSetUp]
Public void Init()
{

Elemento de inicio para cada Prueba

[SetUp]
Public void Init()
{

Elemento de Disposición

[TearDown]
Public void Dispose()
{

Capturando una excepción esperada

[ExpectedException(typeof(NotImplementedException))]
Public void MCD()
{
     New OperacionesConNumerosPositivos().MCD();
}

Ejemplo de Código de Prueba

using NUnit.Framework;
[TestFixture]
public class EjemplodeNUnit
{
   [Test]
    public void TestMultiplicacion()
     {
         Assert.AreEqual(4, 2*2, "Multiplicacion");
     }
}

TestFixture hace referencia a Accesorio de Prueba o Contexto de Prueba, mientras que el framework NUnit descubre el método 
TestEjemplodeNUnit.TestMultiplicacion()  automáticamente por Reflexión (programación).

Te esperamos en los siguientes artículos en donde hablaremos más acerca de estos temas, los cuales hoy en día son de vital importancia en el mundo de la tecnología.

¿Te gustaría aprender Frameworks .NET Empresariales?
Tenemos los cursos que necesitas.¡Haz clic aquí!

About Author

NGuerrero

0 0 votos
Article Rating
Suscribir
Notificar de
guest
0 Comments
Comentarios.
Ver todos los comentarios
0
¿Te gusta este articulo? por favor comentax