Después de instalar NUNIT de Nuget, ¿cómo obligo a Testdriven.net para usar la DLL de NUNIT referenciada por NUGET?
-
28-10-2019 - |
Pregunta
Estoy tratando de configurar una solución de Visual Studio que facilite:
Bdd
Usando Specflow http://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 de directorio de mi solución
La capacidad de usar el comando "Test With Nunit" cuando haga clic derecho en mi proyecto que proporciona TestDriven.net.
No quiero:
- Para usar la versión de NUNIT que Testdriven.net se instala por sí mismo
Quiero:
- El comando "Prueba con Nunit", para usar la versión de Nunit que Nuget instala en los subtirectorios de mi solución para mí para mí
Más detalles y lo que ya he probado:
Cuando instala testdriven.net coloca su propia versión de Nunit en una ruta como:
- Archivos de programa (x86) testdriven.net 3 nunit 2.5
Cuando usa Nuget para instalar la última versión de Nunit It Place Nunit en una ruta como:
- SOLUCIÓN_ROOT paquetes nunit.2.5.10.11092
Nuget agrega automáticamente una referencia a PACKAGES NUNIT.2.5.10.11092 lib nunit.framework.dll para usted. Esa referencia es bastante inútil si desea ejecutar fácilmente las pruebas de NUNIT con el menú TD.NET porque TD.NET no usa la DLL NUNIT que Nuget acaba de configurar para usted.
- ¿Cómo forgo el menú TestDriven.net para usar el DLL NUNIT referenciado en la ruta de mi solución en lugar de la DLL NUNIT que instala en Archivos de programa (x86) testdriven.net 3 nunit ?
O
- Si eso no es posible, ¿hay un comando fácil de tecla de acceso directo/menú para ejecutar las pruebas de Specflow con la nunit que está en mi carpeta de soluciones sin usar TestDriven.net?
¿Por qué estoy tratando de hacer esto?
Instalé NUNIT con Nuget para poder mantener las LIB del marco de prueba dentro de mi solución y bajo el control de la fuente. Necesito la capacidad de hacer referencia a cosas como nunit.framework.dll en la ruta de mi solución (Solution_Root Packages Nunit.2.5.10.11092) y no hacerla referencia desde ( Archivos de programa (x86) testdriven.net 3 nunit 2.5) .
Ya probé las sugerencias aquí:
Y todavía parece estar lanzando la versión de NUNIT de Testdriven.net en lugar de la que Nuget instala para mí.
Tampoco quiero copiar y reemplazar manualmente los archivos nunit instalados por TD.NET, ya que eso no permite archivos de dependencia específicos de solución y aislamiento bajo el control de origen.
Solución
No estoy seguro de que esto sea exactamente lo que buscas, pero aquí va:
Bajo Visual Studio (estoy usando 2010):
- Ir Herramientas-> Opciones-> Test Driven-> Test Runners
- Esta sección enumera todos los corredores de prueba preconfigurados que se envían con TD.NET.
- Correr regedit.
- Vaya a: * HKEY_LOCAL_MACHINE Software wow6432Node Mutantdesign testdriven.net testRunners * Esto será diferente en 32 bits OS.
Agregue una nueva clave NUNIT 2.5.x (simplemente copie otra clave y cambie cualquier configuración que necesite).
Reiniciar Visual Studio.
- En el menú desde el paso #1, encontrará su nuevo corredor de prueba.
- Haga clic y guarde.
De ahora en adelante, sus pruebas se ejecutarán con el corredor de prueba que configuró.