¿Dónde debería colocar el código que debería ejecutarse solo una vez (y no una vez por clase)? Un ejemplo de esto sería una declaración que inicializa la cadena de conexión DB. Y solo necesito ejecutarlo una vez y no quiero colocar un nuevo método dentro de cada clase "TestFixture" solo para hacer eso.Inicialización de One Time para Nunit
Respuesta
El atributo [SetUpFixture]
le permite ejecutar el código de configuración y/o desmontaje una vez para todas las pruebas bajo el mismo espacio de nombres.
Here son los documentos en SetUpFixture
. De acuerdo con los documentos:
A SetUpFixture fuera de cualquier espacio de nombres proporciona montaje y desmontaje para todo el conjunto.
Así que si necesitas SetUp
TearDown
y para todas las pruebas, a continuación, sólo asegúrese de que la clase SetUpFixture
no se encuentra en un espacio de nombres.
Alternativamente, siempre se puede definir una clase estática estrictamente con el fin de definir las variables de prueba "globales".
Crea una clase (yo llamo la configuración de mina) y decorarla con el atributo [SetUpFixture]
. Los métodos [SetUp]
y [TearDown]
en la clase se ejecutarán una vez.
[SetUpFixture]
public class Config
{
[SetUp] // [OneTimeSetUp] for NUnit 3.0 and up; see http://bartwullems.blogspot.com/2015/12/upgrading-to-nunit-30-onetimesetup.html
public void SetUp()
{
}
[TearDown]
public void TearDown()
{
}
}
NUnit v3 cambia ligeramente los atributos. vea [v3 docs] (https://github.com/nunit/nunit/wiki/SetUpFixture-Attribute) –
- 1. javascript add one minute to time object
- 2. Inicialización global de NUnit: ¿mala idea?
- 3. ¿Existe una restricción Has-Only-One en NUnit?
- 4. Android Time vs Java Time
- 5. Relación ONE-TO-ONE de Symfony
- 6. ¿Estilos inline para one-offs?
- 7. Android dev time vs iPhone dev time
- 8. Android: Controlador ADB para HTC One X
- 9. Opción Noshadow para nunit-console
- 10. NUnit 2.5.8, lotes de nunit-agent.exe
- 11. MySQL create time y update time timestamp
- 12. Uso de One Kinect para Windows para dos procesos paralelos
- 13. EF 4.1 Código First ModelBuilder HasForeignKey para relaciones One to One
- 14. Doctrina 2 One-To-One relación unidireccional borrar lado
- 15. python histogram one-liner
- 16. Humanizing time
- 17. Cómo importar FromString para joda-time?
- 18. Cuenta atrás para Navidad con Joda-Time
- 19. Útil PowerShell one liners
- 20. Proyectos múltiples one Source
- 21. sas one-liner
- 22. Inicialización literal para referencias const
- 23. Junit - Multiple @ Before vs. one @Antes de dividir en métodos
- 24. NUnit DeploymentItem
- 25. One Exception handler para todas las excepciones de una CLASE
- 26. Código de EF primero PluralizingTableNameConvention para ONE DbSet
- 27. Solr Index time boost VS Query time boosting?
- 28. Conducción NDepende de NUnit
- 29. NUnit extensión
- 30. especifique la prueba NUnit para ejecutar
que es exactamente lo que estaba buscando, gracias :) –
De acuerdo con los documentos [NUnit] (http://www.nunit.org/index.php? p = setupFixture & r = 2.5.5): "Un SetUpFixture fuera de cualquier espacio de nombres proporciona SetUp y TearDown para todo el ensamblaje". Entonces, si necesita SetUp y TearDown para todas las pruebas, solo asegúrese de que la clase SetUpFixture no esté en un espacio de nombres. –
Estos son los documentos actualizados para el atributo SetupFixture para NUnit 3+: https://github.com/nunit/docs/wiki/SetUpFixture-Attribute El gran cambio es que debe usar los atributos [OneTimeSetup] y [OneTimeTearDown] en los métodos reales, en lugar de simplemente [SetUp] y [TearDown]. –