Domande frequenti su Microsoft.Testing.Platform e estensioni
Questo articolo contiene le risposte alle domande frequenti su Microsoft.Testing.Platform
.
Microsoft.Testing.Platform.MSBuild
errore CS8892: Il metodo 'TestingPlatformEntryPoint.Main(string[])' non verrà usato come punto di ingresso perché è stato trovato un punto di ingresso sincrono 'Program.Main(string[])'
Definire manualmente un punto di ingresso (Main
) in un progetto di test o fare riferimento a un progetto di test da un'applicazione che ha già un punto di ingresso genera un conflitto con il punto di ingresso generato da Microsoft.Testing.Platform
. Per evitare questo problema, eseguire una di queste operazioni:
Rimuovere il punto di ingresso definito manualmente, in genere
Main
metodo in Program.cse consentire alla piattaforma di test di generarne uno automaticamente.Disabilitare la generazione del punto di ingresso impostando la proprietà
<GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>
MSBuild.Disabilitare completamente la dipendenza transitiva per
Microsoft.Testing.Platform.MSBuild
impostando la proprietà<IsTestingPlatformApplication>false</IsTestingPlatformApplication>
MSBuild nel progetto che fa riferimento a un progetto di test. Questa operazione è necessaria quando si fa riferimento a un progetto di test da un progetto non di test, ad esempio un'app console che fa riferimento a un'applicazione di test.
Microsoft.Testing.Extensions.Fakes
Errore di Fakes: Impossibile risolvere il percorso del profiler dalle variabili di ambiente COR_PROFILER_PATH e COR_PROFILER
Questo errore può verificarsi se non tutti gli assembly Fakes sono presenti nella cartella bin.
- Assicurarsi che il progetto usi il MSTest.SDK o faccia riferimento a Microsoft.Testing.Extensions.Fakes.
- Per i progetti .NET Framework, evitare di impostare
<PlatformTarget>AnyCPU</PlatformTarget>
perché in NuGet non vengono copiati tutti i file nella cartella bin.