- Usar for
- Usar un foreach
- o un ciclo while utilizando GetEnumerator()
Aqui va el codigo,
Usando for:
Usando forEach
Usando GetEnumerator
Y mis resultados fueron:
Bueno, llego hasta aqui... saquen sus propias conclusiones :)
Saludos,
#!/bin/sh
exec mono /usr/local/nant/bin/NAnt.exe "$@
chmod a+x /usr/local/bin/nant
A continuación les dejo las tres formas de ejecutar nuestros Test con MBUnit:
A continuación mostraré como usar TestDriven.Net para ejecutar nuestras pruebas. Para el poder llevar a cabo este ejemplo es necesario instalar:
Una vez instalado los prerrequisitos, crearemos un ejemplo para ver como trabaja TestDriven.
Lo primero será crear un proyecto del tipo biblioteca de clases. Luego de esto agregaremos la referencia de MbUnit a nuestro proyecto.
Para nuestro ejemplo he creado un ejemplo que no tiene ningún tipo de “lógica”, y solo fue hecho para fines didácticos. El proyecto esta compuesto de dos clases una llamada datamanager, que esta compuesta por una única función que devuelve un objeto del tipo datatable, y otra clase llamada DataManagerTest, la cual contiene un metodo GetDataTableTest que realiza una assert sobre la funcion GetDataTable de la primera clase.
segunda clase....
Luego de hacer los pasos antes comentados ya es hora de correr nuestros tests J. Lo único que deben hacer click derecho sobre nuestra clase DataManagerTest y elegir la opción “Run Test(s)”.
Cuando se ejecute nuestros tests, ustedes podrán ver la salida o el resultado de la ejecución en la ventana “output” de Visual Studio.
Como resumen, entrego lo que he hecho en este post:
Como ven, el uso de estas herramientas es bastante sencillo! Ahora solo deben usarlas!!
Desde sus comienzos este proyecto ha implementado todas las características que Nunit y csUnit, pero con la extensibilidad que ellos no tienen.
Antes de empezar deberías tener instalado lo siguiente en tu computador:
Y? ya los instalaste?. Bueno, ahora prosigamos.
Escribiendo nuestros primeros tests
Tal cual como dice el el manual de mbunit: escribir test no es para nada complicado es un simple grupo de Fixtures, tests y asserts.
Dentro de Mbunit exiten mas términos que poco a poco iré comentando, pero por el momento solo utilizare lo que arriba describí.
Entonces para comenzar escribiré algunos tests para la una típica clases que ustedes ya conocen, la pila.
Public Class Stack
Private elements As New ArrayList
Get
Return (elements.Count = 0)
End Get
End Property
elements.Insert(0, element)
End Sub
Public Function Pop() As Object
Dim topelement As Object = Top()
elements.RemoveAt(0)
Return topelement
End Function
Public Function Top() As Object
If IsEmpty Then
Throw New InvalidOperationException("Stack is Empty")
End If
Return elements(0)
End Function
End Class
y justo con la pila esta su compañero inseparable la StackTest
Imports MbUnit.Framework
Imports MiLibreria
Public Class StackTest
Public Sub IsEmptyTest()
Dim myStack As New Stack
Assert.IsTrue(myStack.IsEmpty)
End Sub
Public Sub PushTest()
Assert.IsTrue(myStack.IsEmpty)
myStack.Push(New Object)
myStack.Push(New Object)
Assert.IsFalse(myStack.IsEmpty)
End Sub
Public Sub PopTest()
Dim myStack As New Stack
Assert.IsTrue(myStack.IsEmpty)
myStack.Push(New Object)
myStack.Pop()
Assert.IsTrue(myStack.IsEmpty)
End Sub
Public Sub Top()
Assert.IsTrue(myStack.IsEmpty)
myStack.Push(New Object)
myStack.Pop()
Assert.IsTrue(myStack.IsEmpty)
End Sub
End Class
Creo que no hay necesidad de explicar el código de la clase stack, pero si lo es para la clase stacktest. Básicamente esta clase contiene 4 métodos, donde cada uno de ellos prueba o revisa un método en particular de la clase stack (push, pop, isempty, top) . Como pueden ver en la clase cada método es etiquetado con
Junto con la etiqueta
Y...¿Como configuras tu solución?
Para este post, he creado una solución con 3 proyectos, donde el proyecto de test contiene una referencia al proyecto donde se encuentra el clase stack junto con una referencia a MbUnit.Framework.dll ( que para mi instalación quedo en C:\Archivos de programa\MbUnit).Las referencias quedan como ves en la próxima imagen.
Y... ¿Como puedes ver como corren los tests?
Respuesta: Facil, para poder lograr esto tienes tres opciones: correr un tests en una consola, una interfaz grafica que te entrega Mbunit y por ultimo, pero no menos importante, con TestDriven.
Para el caso de nuestro ejemplo, lo ejecutaremos por medio de la consola (utilizando el comando MBunit.Cons.exe TestsMilibreria.dll )
Bueno, eso ha sido todo por hoy :D. Espero postear muchas otras cosas de Mbunit.
Antes de decir cualquier cosa....
Hola a todos los lectores de este blog, mi nombre es Rolando Martínez y soy alumno tesista de la Carrera de Ingeniería en Computación de la Universidad Austral de Chile. Actualmente me desempeño como desarrollador en una empresa noruega con sede en Chile llamada Mercatus.
Uno de mis objetivos en este blog, es postear todo lo relacionado con desarrollo de software, y principalmente temas que solo han sido abordado en ingles, pero no español (o muy poco)
Saludos,
Rolando.