Unit testing

Solo disponible en BuenasTareas
  • Páginas : 6 (1439 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de junio de 2011
Leer documento completo
Vista previa del texto
Unit Testing

Consiste en realizar testeos de códigos individuales de la aplicación, por ejemplo un método o clase evaluando la forma en que trabaja.

Básicamente consta de escribir código para testear código. Para ello debemos tener en cuenta como va a trabajar ese código que deseamos testear y redactar posibles casos de prueba, por ejemplo en el caso de una función que realice una divisióny devuelva un resultado:

Public Class Operacion
Public Function Dividir(ByVal valor1 As Double, _
ByVal valor2 As Double) As Double
If valor2 0 Then
Return valor1 / valor2
Else
Throw New ArgumentException("No es posible dividir por 0")
End If
End Function

End Class
Algunos casos de prueba podrían ser:

1 – Si los 2 valores son iguales la funciónretorne 1
2 – Si el valor1 es igual a 0, la función debe retornar 0
3 – Si el valor1 es 4 y el valor2 es 2 la función debe retornar 2
4 – Si el valor2 es 0, la función debe retornar un error

Por cada uno de estos casos de prueba se va a generar un nuevo método que lo testee. Para ello hay varias opciones, entre ellas:

- Utilizar NUnit : http://www.nunit.org/index.php?p=download
- Utilizarlas herramientas de testeo de Microsoft Visual Studio Team Edition

Estas herramientas de testeo utilizan una terminología específica:
Cada método que testee un caso de prueba, es llamado “caso de prueba” (Test Case)
Una Clase que contenga a un grupo de casos de prueba es llamada Test Fixture
La combinación de varios Test Fixtures se denomina Test Suite

En ambos casos se creará un nuevoproyecto dentro de la solución que contendrá todas las funciones de testing.

Utilizando NUnit

NUnit es un framework de testeo Unit Testing para todos los lenguajes de .Net. Se puede descargar desde http://www.nunit.org/index.php?p=download
Al descargarlo e instalarlo, se podrán agregar referencias al framework de NUnit desde Visual Studio.
Para utilizar NUnit en Visual Studio se realizanlos siguientes pasos:

Abrir el proyecto que se desee testear
Agregar un nuevo proyecto a la solución (lo llamaremos NUnitTest).
Agregar al nuevo proyecto las referencias a nunit.framework y al proyecto que se desa testear

Crear una nueva clase dentro del proyecto NUnitTest. Colocar el nombre que se desee, en este caso NUnitTest, y colocarla dentro del namespace que se desee, en este casoNUnitTest.
Importar el framework de NUnit.

El código por el momento seria el siguiente:

Imports NUnit.Framework
Namespace NUnitTest
Public Class NUnitTest

End Class
End Namespace

Luego es necesario comenzar a programar los métodos que se encargaran de testear cada caso de prueba. Es necesario identificar en el código por medio de atributos cuales son los Test Case (los métodosque testearan cada caso de prueba) y cual es el Test Fixture (la clase que contendrá a los métodos de testeo). Para los Test Case se utiliza el atributo _ y para el Test Fixture el atributo _
Dentro del framework de NUnit se encuentra la clase Assert, la cual posee diferentes métodos que permiten evaluar el resultado esperado, y el resultado obtenido del código que se testea, también permitedefinir un mensaje para mostrar en caso de error.

Siguiendo con el ejemplo de la función que divide 2 valores expresado anteriormente, procederemos a escribir el código que testee los 4 casos de prueba, para ello es necesario definir 4 métodos:

Imports NUnit.Framework
Namespace NUnitTest
_
Public Class NUnitTest
#Region "Test Division"
'Test1: n/n=1
'Test2: 0/n=0'Test3: 4/2=2
'Test4: n/0=Error

_
Public Sub Test1_Division()

End Sub
_
Public Sub Test2_Division()

End Sub
_
Public Sub Test3_Division()

End Sub

_
Public Sub Test4_Division()

End Sub

#End Region
End Class
End Namespace

Una vez definido los...
tracking img