Domanda

Ho una libreria C # piuttosto grande, originariamente scritta per .NET e Windows, che ora stiamo portando su Mono e Linux. Viene accuratamente testato con NUnit. Il porting è stato abbastanza semplice, ma ora ho bisogno di alcune funzionalità di debug reali, come i numeri di riga di errore e i punti di interruzione.

Sto compilando usando VS2010 su Windows 7 o con xbuild su Debian 6.0.2, non importa perché i binari sono completamente compatibili. Esecuzione di test con Mono 2.10.2 compilato da tarball e NUnit 2.5.10 da Debian sperimentale.

Quando eseguo il mio progetto in Visual Studio, il debug funziona correttamente dopo essermi collegato al processo nunit. Quindi, qualcuno sa come posso abilitare il supporto completo del debugger Mono con i test NUnit?

P.S. Ho visto questo , ma sto compilando con xbuild e in esecuzione con nunit-console, quindi non posso fornire manualmente argomenti né al compilatore né al runtime Mono.

Grazie in anticipo!

AGGIORNAMENTO: ho scoperto l'utilità pdb2mdb, ma anche quando la uso, non riesco ancora a ottenere i numeri di riga, il che mi porta a credere che il codice non sia stato compilato con --debug. Ma dal momento che sto usando xbuild su un file VS .sln, invece di invocare direttamente il compilatore, come posso usare --debug ??

È stato utile?

Soluzione

Capito.Jon Skeet viene in soccorso, ancora una volta:

Nunit .net vs mono

Dopo la conversione in mdb, avevo bisogno di eseguire nunit-console .EXE dall'interno del comando mono, in questo modo:

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

Ci è voluto molto più tempo di quanto avrebbe dovuto: P

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top