Condividi tramite


Unit test e C++

Gli unit test possono rappresentare un modo rapido per controllare errori logici nei metodi delle classi nel codice C++ gestito. Uno unit test può essere creato una volta ed eseguito ogni volta che il codice sorgente viene modificato per assicurarsi che non siano stati introdotti bug. È inoltre possibile utilizzare unit test con Visual C++ gestito in base alle specifiche descritte in questo argomento. È inoltre possibile utilizzare unit test in Visual C# e Visual Basic. Per ulteriori informazioni, vedere Procedura: creare ed eseguire uno unit test.

Come testare il codice C++

Tipo di progetto C++

Metodo di test

Supporto unit test

DLL non gestita

EXE

  • Creare un progetto di test C++, passare a /clr e chiamare il codice nel test in modali C++ normale.

  • Creare un progetto di test Visual Basic, C# o C++ e utilizzare l'interoperabilità [DllImport].

No

Oggetto COM

  • Utilizzare un riferimento COM e chiamarlo in modalità COM.

No

Gestito

/clr o /clr:pure

No

Gestito

/clr:safe

  • Unit test

Note aggiuntive

  • Non è possibile disporre di progetti di test con unit test che usano C++ non gestito.

    Di seguito sono illustrate due ulteriori note relative all'opzione /clr:.

    • La generazione del codice può creare unit test in qualsiasi tipo di progetto di test Visual C++: misto, sicuro e pure. Il tipo di progetto predefinito prodotto è un progetto /clr:safe. Se si desidera modificare il progetto in /clr o /clr:pure, è possibile procedere in qualsiasi momento utilizzando le opzioni di compilazione di Visual C++. Per ulteriori informazioni, vedere /clr (Common Language Runtime Compilation).

    • Se il codice di produzione è scritto in Visual C++, è possibile generare unit test solo se il prodotto utilizza l'opzione di compilazione /clr:safe.

    • /clr:safe (predefinita) e /clr:pure non consentono chiamate a codice non gestito.

    • Se è necessario chiamare codice non gestito, utilizzare /clr.

Vedere anche

Riferimenti

Compiler Options

Concetti

Creazione ed esecuzione di unit test per il codice esistente

Unit test per i metodi generici