Estoy tratando de configurar una solución de Visual Studio que facilita:Después de instalar NUnit desde NuGet, ¿cómo obligo a TestDriven.Net a usar el dll NUnit al que hace referencia NuGet?
BDD
Usando SpecFlowhttp://www.specflow.org/
Como se describe en TekPub aquí: http://tekpub.com/view/concepts/5
me gustaría:
para mantener todas las referencias y dependencias bajo la raíz de la estructura del directorio de mi solución
La capacidad de utilizar la "Prueba Con NUnit", comando cuando hago clic derecho en en mi proyecto que proporciona TestDriven.NET .
NO deseo:
- Para utilizar la versión de NUnit que TestDriven.NET instala por sí mismo
sí quiero:
- La "Prueba Con NUnit", comando utilizar la versión de NUnit que NuGet instala bajo subdirectorios de mi solución para mí
Más detalle y lo que ya he intentado:
Al instalar TestDriven.NET coloca su propia versión de NUnit en un camino como:
- \ archivos de programa (x86) \ Test Driven.NET 3 \ NUnit \ 2,5
Cuando se utiliza NuGet para instalar la última versión de NUnit se coloca en un camino NUnit como:
- Solution_root \ Packages \ NUnit.2.5.10.11092
NuGet agrega automáticamente una referencia a \ packages \ NUnit.2.5.10.11092 \ lib \ nunit.framework.dll por usted. Esa referencia es prácticamente inútil si desea ejecutar fácilmente pruebas NUnit con el menú TD.Net porque TD.Net en realidad no utiliza el dll NUnit que NuGet acaba de configurar para usted.
- ¿Cómo fuerzo menú de TestDriven.Net utilizar la DLL NUnit referencia en el camino de mi solución en lugar de la DLL NUnit que se instala en \ Archivos de programa (x86) \ TestDriven.NET 3 \ NUnit \?
O
- Si eso no es posible, ¿hay un comando tecla de acceso directo/menú fácil de ejecutar las pruebas SpecFlow con el NUnit que está bajo mi carpeta de la solución sin utilizar TestDriven.Net?
¿Por qué estoy tratando de hacer esto?
Instalé NUnit con NuGet para poder mantener las librerías del framework de prueba dentro de mi solución y bajo control de fuente. Necesito la capacidad de hacer referencia a cosas como nunit.framework.dll en la ruta de mi solución (raíz_de_solución \ packages \ NUnit.2.5.10.11092) y NO hacer referencia a ella desde (\ Archivos de programa (x86) \ TestDriven.NET 3 \ NUnit \ 2.5) .
ya que todas las sugerencias aquí:
y todavía parece ser el lanzamiento de la versión de TestDriven.Net de NUnit en lugar de la NuGet instala para mí.
Asimismo, no quiero copiar manualmente y vuelva a colocar los archivos instalados por NUnit TD.Net como que no permite a archivos de dependencia específicos de la solución y el aislamiento bajo control de origen.
Si esto no es posible, ¿alguien puede recomendar un enfoque para: Instalar xUnit.net, NUnit o MSTest vía NuGet, hacen que SpecFlow use ese paquete NuGet instalado bajo la solución, y tienen una simple forma de hacer clic derecho o casi automático para decirle a Visual Studio que "ejecute todas estas pruebas ahora". – Kerry
Esta no es la respuesta a esta pregunta exacta, pero aquí está la solución que he estado usando por ahora: Haga clic con el botón derecho en la biblioteca de clases que contiene las especificaciones/pruebas y elija propiedades. Elija la pestaña Build Events. En la línea de comandos del evento Post-build, agregue esto: $ (SolutionDir) \ packages \ NUnit.2.5.10.11092 \ tools \ nunit.exe $ (TargetPath)/run Reemplazar \ NUnit.2.5.10.11092 \ con lo que sea exacto versión NuGet instalada bajo su sln. Ejecutar el evento de compilación posterior: en compilación exitosa. Después de cada buena compilación, la GUI de NUnit se ejecutará y ejecutará las pruebas en la dll. – Kerry