安装 Visual Studio 2017 Community 后,我尝试创建一个 .NET Core 单元测试项目。使用默认输出路径,一切正常。但是将中间输出路径更改为.\obj以外的任何内容都会导致以下错误。
开始测试执行,请稍候... 找不到源 'C:\temp\vs\cl1\p4\bin\Debug\netcoreapp1.1\p4.dll' 的 testhost.dll。确保测试项目具有包“microsoft.testplatform.testhost”的 nuget 引用。
复制步骤:
- 打开 dotnet cli 提示符。
- md p4
- cd p4
- dotnet 新 mstest
编辑 p4.csproj 以将中间输出路径更改为类似obj2\的内容。
<PropertyGroup> <TargetFramework>netcoreapp1.1</TargetFramework> <BaseIntermediateOutputPath>obj2\</BaseIntermediateOutputPath> </PropertyGroup>
点网还原
- 点网构建
- 点网测试
mstest和xunit项目都会出现同样的问题。
更改输出路径(OutputPath)似乎工作正常。似乎只是中间输出路径(BaseIntermediateOutputPath和IntermediateOutputPath )有问题。
正如错误所暗示的那样,添加对 Microsoft.TestPlatform.TestHost 的显式包引用似乎没有帮助。
在 Visual Studio IDE 中,同样的问题(可能)表现为没有单元测试出现在测试资源管理器工具窗口中。