2013-11-05 27 views
9

Ho una soluzione che ha progetti sia con codice C++ e C++/CLI, sia una serie di progetti che testano tutti insieme utilizzando il Microsoft Unit Test Framework. Per i progetti C++/CLI, i progetti di test unitari sono test di unità C#. Quello che ho attualmente è una piattaforma per 32 e 64 bit. Inoltre, per ogni piattaforma ho progetti di test unitari impostati su piattaforme a 32 e 64 bit da abbinare.Test di Visual Studio Unit 32-bit e 64-bit

Il problema che ho è che quando passo a 32-bit contro 64-bit ho bisogno di andare a TEST > TEST SETTINGS > DEFAULT PROCESSOR ARCHITECTURE e girare da 32 e 64 secondo necessità. Se non lo faccio, ricevo un avviso da Visual Studio che un'immagine a 64 bit non può essere eseguita in un processo a 32 bit. Questo ha senso, ma sicuramente c'è un modo per automatizzare questo? In caso contrario, se eseguo una compilazione batch su una macchina di costruzione, non avrò il controllo di questa operazione e i test delle unità falliranno.

Inoltre ho cercato di impostare i progetti di test unità per essere AnyCPU ma questo non riesce a dire un errore "Si è tentato di caricare un programma con un formato non corretto"

C'è un modo migliore, forse?

risposta

3

Se si desidera automatizzare l'esecuzione di test in una macchina di compilazione, è possibile impostare il progetto su AnyCPU ed eseguire corflags/32bit + (o/32 bit-) per impostare l'assieme .NET sulla piattaforma corretta prima di eseguire i test delle unità.

Non sono a conoscenza di una soluzione automatica per VS altro, quindi ho due progetti (uno x64 e su x86) che si collegano agli stessi file.

Problemi correlati