本文包含对有关 Microsoft.Testing.Platform
的常见问题的解答。
Microsoft.Testing.Platform.MSBuild
错误 CS8892:由于找到了同步入口点“Program.Main(string[])”,因此不会将方法“TestingPlatformEntryPoint.Main(string[])”用作入口点。
在测试项目中手动定义入口点 (Main
) 或从已具有入口点的应用程序引用测试项目会导致与 Microsoft.Testing.Platform
生成的入口点冲突。 若要避免此问题,请执行以下步骤之一:
删除手动定义的入口点,通常是
Main
中的 方法,让测试平台生成一个入口点。通过设置
<GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>
MSBuild 属性来禁用入口点的生成。通过在引用测试项目的项目中设置
Microsoft.Testing.Platform.MSBuild
MSBuild 属性来完全禁用<IsTestingPlatformApplication>false</IsTestingPlatformApplication>
的可传递依赖项。 从非测试项目引用测试项目(例如引用测试应用程序的控制台应用)时,需要这样做。
Microsoft.Testing.Extensions.Fakes
Fakes 错误。无法解析来自 COR_PROFILER_PATH 和 COR_PROFILER 环境变量的探查器路径
如果 Bin 文件夹中不存在所有 Fakes 程序集,则可能会出现此错误。
- 请确保项目使用 MSTest.SDK 或引用 Microsoft.Testing.Extensions.Fakes。
- 对于 .NET Framework 项目,请避免设置
<PlatformTarget>AnyCPU</PlatformTarget>
,因为这样 NuGet 不会将所有文件复制到 bin 文件夹。