Otra forma de hacerlo es con parameterized tests con NUnit 2.5, probablemente mas limpio:
http://www.nunit.org/index.php?p=parameterizedTests&r=2.5 Si tenes 10 minutos mirate esto: http://vimeo.com/13072671 ---------------------------------- Carlos Peix 2010/8/31 Carlos Marcelo Santos <carlos.san...@mug.org.ar> > Muchas Gracias Carlos. > > > > *De:* puntonet@mug.org.ar [mailto:punto...@mug.org.ar] *En nombre de *Carlos > Peix > *Enviado el:* martes, 31 de agosto de 2010 22:41 > > *Para:* puntonet@mug.org.ar > *Asunto:* [puntonet] Re: [puntonet] RE: [puntonet] Re: [puntonet] RE: > [puntonet] Re: [puntonet] RE: [puntonet] Re: [puntonet] [puntonet] NUnit, > código común > > > > Hola Carlos, > > > > Que es lo que prueban todos estos casos? Que diferencias implican para el > objeto bajo prueba los diferentes archivos? > > > > Si el componente no debe fallar con ninguno de ellos, por algun motivo que > no se me ocurre ahora, haria un solo test con un loop, algo asi: > > > > [TestFixture] > > class MCImageTest > > { > > private string[] fileNames; > > > > [SetUp] > > public void Init() > > { > > fileNames = new string[] { "*Image01*.pix", "Image02.pix", > ...}; > > } > > > > [Test] > > public void VerificoQueHayaAlgo() > > { > > foreach (string fileName in fileNames) > > { > > using (var m = > ImageLib.MCImageUtils.LoadImageFromRawData(fileName)) > > { > > m.Should().Not.Be.Equals(null); > > m.Height.Should().Be.GreaterThanOrEqualTo(0); > > } > > } > > } > > } > > > > Este no es un test ideal puesto que hace varios asserts y, cuando falle, va > a ser dificil saber porque pero si simplemente tiene que pasar todas las > imagenes sin mas, es lo mejor que se me ocurre. > > > ---------------------------------- > Carlos Peix > > 2010/8/31 Carlos Marcelo Santos <carlos.san...@mug.org.ar> > > Perdón que vuelva sobre el tema. Ahora tengo una versión reducida de la > clase: > > namespace MCImage.Test > > { > > [TestFixture] > > class MCImageTest > > { > > private string fileName = "*Image01*.pix"; > > private ImageLib.MCImage m; > > > > [SetUp] > > public void Init() > > { > > ActionAssert.NotThrow(() => m = > ImageLib.MCImageUtils.LoadImageFromRawData(fileName)); > > } > > > > [TearDown] > > public void Dispose() > > { > > ActionAssert.NotThrow(() => m.Dispose()); > > } > > > > [Test] > > public void VerificoQueHayaAlgo() > > { > > m.Should().Not.Be.Equals(null); > > } > > > > [Test] > > public void VerificoWidth() > > { > > m.Height.Should().Be.GreaterThanOrEqualTo(0); > > } > > } > > } > > > > Tendría que tener unas 10 o 15 clases prácticamente iguales a esta, donde > toda la variación es el string que pinté de rojo (*Image01*) > > En la clase original tengo más de veinte variables declaradas y unos > treinta tests. > > Vi que con TestCase le puedo pasar estos argumentos a los tests, pero no > encuentro cómo pasarle estos valores al Setup > > ¿Alguna idea? > > > > Muchas Gracias. > > > > Carlos Marcelo Santos. > > > > Se certificó que el correo entrante no contiene virus. > > Comprobada por AVG - www.avg.es > Versión: 9.0.851 / Base de datos de virus: 271.1.1/3104 - Fecha de la > versión: 08/31/10 03:34:00 > >