Share via


Risoluzione dei problemi relativi a test generici

Quando si eseguono test generici, è possibile che si verifichi l'errore seguente: la raccolta di dati di code coverage non riesce quando si esegue un test generico in una piattaforma a 64 bit.Per risolvere l'errore, utilizzare le informazioni della sezione seguente, Come ovviare alla limitazione dei 32 bit.

Requisiti

  • Visual Studio Ultimate, Visual Studio Premium

Come ovviare alla limitazione dei 32 bit

La strumentazione di tipo code coverage funziona solo in modalità a 32 bit, non in modalità a 64 bit,in quanto un assembly può essere caricato in modalità a 32 bit solo dopo che è stato instrumentato per il code coverage.

[!NOTA]

Questa limitazione non si applica quando gli unit test vengono eseguiti in un computer a 64 bit, se non vengono raccolti dati di code coverage,perché VSTestHost.exe, il modulo di test che carica la libreria di classi, viene eseguito in un processo a 32 bit.

Per un test generico, l'applicazione di cui è stato eseguito il wrapping viene compilata in base a "Any CPU", che in un computer a 64 bit viene eseguita come processo a 64 bit.Quando questo processo a 64 bit tenta di caricare un assembly a 32 bit, si verifica un errore.Per risolvere il problema, utilizzare uno dei metodi seguenti.

Utilizzare il metodo seguente se il test generico esegue direttamente il wrapping del file binario in cui è stato compilato il codice di produzione:

  • Modificare la configurazione della soluzione in x86

Utilizzare uno dei due metodi seguenti se è presente un livello tra il test generico e il file binario del codice di produzione,ossia se il test generico esegue il wrapping di un'applicazione intermedia come test harness.Questo test harness, a sua volta, esegue il codice di produzione in fase di test.

  • Modificare le impostazioni di compilazione per l'applicazione che carica il file binario del codice di produzione

ms404657.collapse_all(it-it,VS.110).gifModificare la configurazione della soluzione in x86

Modificare la configurazione della soluzione da "Any CPU" a "x86."

Per modificare la configurazione della soluzione

  1. Fare clic con il pulsante destro del mouse sulla soluzione e quindi fare clic su Proprietà.

    Verrà visualizzata la finestra di dialogo delle pagine delle proprietà della soluzione.

  2. In Proprietà di Configurazione fare clic su Configurazione.

  3. Chiudere Gestione Configurazione.

    Verrà visualizzata la finestra di dialogo Gestione configurazione.

  4. In Piattaforma soluzione attiva fare clic su Nuovo.

    Verrà visualizzata la finestra di dialogo Nuova piattaforma soluzione.

  5. In Digitare o selezionare la nuova piattaforma fare clic su x86.

  6. Nella finestra di dialogo Nuova Piattaforma Soluzione scegliere OK.

  7. Nella finestra di dialogo in cui si chiede se salvare le modifiche scegliere .

  8. Nella finestra di dialogo Gestione Configurazione, in Piattaforma soluzione attiva, assicurarsi che sia selezionata l'opzione x86, quindi fare clic su Chiudi.

  9. Nella finestra di dialogo Pagine delle proprietà della soluzione scegliere OK.

ms404657.collapse_all(it-it,VS.110).gifModificare le impostazioni di compilazione per l'applicazione che carica il file binario del codice di produzione

Utilizzare questa procedura per instrumentare qualsiasi applicazione intermedia, o test harness, di cui il test generico esegue il wrapping.Questa applicazione intermedia esegue il codice che si desidera testare.

In questa procedura si modificano le impostazioni dell'applicazione intermedia affinché venga compilata per la piattaforma x86.

[!NOTA]

È possibile eseguire questa operazione solo se l'applicazione di cui è stato eseguito il wrapping viene compilata da un progetto della soluzione.

Per modificare le impostazioni di compilazione per l'applicazione di cui è stato eseguito il wrapping

  1. In Esplora soluzioni fare clic con il pulsante destro del mouse sul progetto dal quale è compilata l'applicazione intermedia, quindi scegliere Proprietà.

    Verrà visualizzata una pagina di proprietà per il progetto.

  2. Fare clic sulla scheda Compila.

  3. Per Piattaforma di destinazione, specificare x86.

  4. Scegliere Salva elementi selezionati dal menu File.

Vedere anche

Concetti

Creazione di un test automatizzato che avvia un eseguibile utilizzando test generici