Necesitamos algún código de configuración única mundial en nuestro conjunto de pruebas. Podemos hacerlo más de una vez, pero lleva bastante tiempo.Inicialización global de NUnit: ¿mala idea?
Es requerido por todos los dispositivos para que
[TestFixtureSetUp]
no funcione. Tiene que ejecutarse antes del código[TestFixtureSetUp]
.Ponlo en
Main()
ya que mantenemos los ensambles de prueba como ejecutables. Sin embargo,Main
no se ejecuta bajo el cliente GUI.La creación de una clase separada con un constructor estático para la inicialización solo funciona cuando se hace referencia a la clase que no favorecemos en todas y cada una de las clases.
Heredar todos los accesorios de prueba de una clase base y agregarle un constructor estático provoca varias llamadas al código de inicio.
Ahora dadas las circunstancias, tengo dos preguntas:
1) ¿Es "configuración global" una muy mala idea que no está apoyada por NUnit?
2) ¿Cuál es la forma menos dolorosa y más común de lograr esto?
Por cierto para aquellos que se preguntan, MbUnit apoya clases "AssemblyFixture", cuyo código de configuración de dispositivo se ejecuta una vez por conjunto. Sé que mi pregunta fue sobre NUnit, pero cualquiera que esté pensando en un cambio debería considerar eso también. –