Pregunta

He cambiado mi máquina de desarrollo (WinXP / 32bit) a una nueva (Windows 7 / 64bit). Ahora tengo problemas para ejecutar la prueba NUnit desde Visual Studio 2008. Estoy usando la última compilación de TestDrivenNet .

Lo que estoy buscando es:

  • a) cómo hacer que TestDrivenNet funcione en Win7 / 64
  • b) buscando sugerencias para corredores de prueba alternativos. Gratis uno preferido.

Qué funciona en WinXp / 32 (y no funciona en Win7 / 64):

  • ejecute un método de prueba dentro de VS.NET
  • depurar un método de prueba dentro de VS.NET
  • ejecuta todas las pruebas en una clase dentro de VS.NET

Síntomas en Win7 / 64:

  • al intentar ejecutar la prueba, el corredor informa "0 aprobado, 0 fallido, 0 omitido". Parece que no puede encontrar ninguna prueba en mi clase.
  • probado con TestDriven.NET-2.22.2468 (RTM) y 2.23.2497 (beta). Los mismos resultados.

Pregunta:

  • ¿Puede sugerir un buen corredor de prueba de nunit que funcione para Win7 / 64? Se prefiere la variante gratuita.
  • ¿Alguna sugerencia sobre cómo hacer que el corredor testdriven.net funcione?
¿Fue útil?

Solución 2

Mi compañero de trabajo tuvo exactamente el mismo problema y esta vez puede proporcionar una solución mínima. Lo estoy volviendo a publicar aquí, tal vez también ayudaría a alguien más.

Parece que la causa raíz del problema fue Source Gear Vault 3.5.x. Consulte su publicación del foro de soporte para obtener más detalles.

El envío del siguiente código al registro resolvió el problema de TD.NET que no funcionaba:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_CLASSES_ROOT\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}]
@="IServiceProvider"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\NumMethods]
@="4"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Interface\{6D5140C1-7436-11CE-8034-00AA006009FA}\ProxyStubClsid32]
@="{A4A1A128-768F-41E0-BF75-E4FDDD701CBA}"

Otros consejos

Estoy usando win7 64 bit con TD.NET 2.22.246 y funciona bien. Los únicos otros corredores de Visual Studio que existen son mstest (se ejecutan solo como procesos de 32 bits) y TestMatrix (no gratis)

Para verificar si se trata de un problema de 64 bits, puede compilar el proyecto de prueba como x86 y ejecutar las pruebas con TD.NET. En ese caso, TD.NET se ejecutará como un proceso de 32 bits: puede verificarlo utilizando el Administrador de tareas y mirando ProcessInvocation.exe

Si las pruebas se ejecutan que su problema de 64 bits. si falla, quizás el problema esté en otro lugar. ¿Estás usando otras herramientas en tus pruebas? cobertura, burlas, etc., ¿tal vez el problema está en otro lugar?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top