Realización de pruebas VS2008 en pruebas NUnit
-
05-07-2019 - |
Pregunta
Me han dicho que las pruebas generadas automáticamente en VS2008 pueden hacerse compatibles con NUnit simplemente agregando
#if !NUNIT
using Microsoft.VisualStudio.TestTools.UnitTesting;
#else
using NUnit.Framework;
using TestClass = NUnit.Framework.TestFixtureAttribute;
using TestMethod = NUnit.Framework.TestAttribute;
using TestInitialize = NUnit.Framework.SetUpAttribute;
using TestCleanup = NUnit.Framework.TearDownAttribute;
using TestContext = System.String;
using DeploymentItem = NUnit.Framework.DescriptionAttribute;
#endif
EDITAR: La pregunta cambió ligeramente el enfoque ya que solucioné el problema de referencia. Nuevamente, me dijeron que esta declaración funcionaría para cambiar al programa de prueba de unidad correcto, VS o NUnit.
Nunca entra en la sentencia else. Entonces, la nueva pregunta es: ¿necesito cambiar el condicional a otra cosa, o me estoy perdiendo algo simple otra vez?
Solución 3
Bueno, descubrí qué hacer después de pasar por alto el simple error que Richard me señaló.
Ya que estoy ejecutando estos en CC.NET, simplemente tomé la salida fácil para la variable y configuré una variable de Windows en cmd y luego ejecuté la DLL con nunit-console.exe.
Si realmente no te importa poder alternar entre los programas de prueba de VS2008 y NUnit, simplemente puedes eliminar el código de precompilación, dejando el contenido de if para VS y el contenido de else para NUnit.
Otros consejos
¿Ha hecho referencia al ensamblaje NUnit en lugar del ensamblaje de prueba de VS?
¿Está intentando convertir sus pruebas o ejecutar las pruebas NUnit y VS en el mismo proyecto? Si está convirtiendo, debería poder usar find & amp; Reemplazar para realizar la mayoría de los cambios.
Pasé por una conversión de pruebas de VS a NUnit y encontré una diferencia de sintaxis: el orden de los argumentos es diferente para el método IsInstanceOfType.