Pregunta

Tengo una biblioteca C # bastante grande, originalmente escrita para .NET y Windows, que ahora estamos portando a Mono y Linux. Se ha probado a fondo con NUnit. La migración ha sido bastante simple, pero ahora necesito algunas funciones de depuración reales, como números de línea de error y puntos de interrupción.

Estoy compilando usando VS2010 en Windows 7 o con xbuild en Debian 6.0.2, realmente no importa porque los binarios son totalmente compatibles. Ejecución de pruebas con Mono 2.10.2 construido a partir de tarball y NUnit 2.5.10 de Debian experimental.

Cuando ejecuto mi proyecto en Visual Studio, la depuración funciona bien después de adjuntarlo al proceso nunit. Entonces, ¿alguien sabe cómo puedo habilitar la compatibilidad con el depurador Mono con todas las funciones con las pruebas NUnit?

P.S. He visto esto , pero estoy compilando con xbuild y ejecutándose con nunit-console, por lo que no puedo dar argumentos manualmente ni al compilador ni al tiempo de ejecución de Mono.

¡Gracias de antemano!

ACTUALIZACIÓN: Descubrí la utilidad pdb2mdb, pero incluso cuando la uso, todavía no puedo obtener números de línea, lo que me lleva a creer que el código no se está compilando con --debug. Pero como estoy usando xbuild en un archivo VS .sln, en lugar de invocar el compilador directamente, ¿cómo uso --debug ??

¿Fue útil?

Solución

Lo descubrí.Jon Skeet viene al rescate, una vez más:

Nunit .net frente a mono

Después de convertir a mdb, necesitaba ejecutar nunit-console .EXE desde dentro del comando mono, así:

mono --debug /opt/mono-2.10/lib/mono/4.0/nunit-console.exe Test.dll -config=Debug

Eso tomó más tiempo del que debería: P

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