更新:我没有意识到我使用的是类库(.NET Standard)而不是类库(.NET Framework),或者说实话两者是不同的。我对C#很陌生。因此,当我从.NET Standard更改为.NET Framework时,我的代码开始正常工作。
我想使用C#和Selenium创建UI自动化框架,并且我在线上关注了一些有关如何执行此操作的教程。我在Visual Studio中使用NuGet Manager安装了以下程序:
我继续创建一个非常简单的测试:
[Test]
public void SampleTest()
{
IWebdriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("https://sample.com");
}
构建解决方案后,我进行了测试并得到了此错误:
无法找到.... \ testhost.dll。请发布您的测试项目,然后重试。
我搜索了一个解决方案,许多人通过安装 Microsoft.Net.Test.Sdk 来解决它,所以我做了同样的事情,但是问题仍然存在。
我还能尝试其他什么吗?
这是我的项目参考:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.2.0" />
<PackageReference Include="NUnit" Version="3.12.0" />
<PackageReference Include="NUnit3TestAdapter" Version="3.13.0" />
<PackageReference Include="Selenium.WebDriver" Version="3.141.0" />
</ItemGroup>
</Project>
答案 0 :(得分:0)
尝试调试单元测试时遇到此错误。以下是我尝试的步骤。 第1步:安装了Microsof.TestPlatform.TestHost并尝试运行测试,但没有成功。 第2步:将目标框架从.NET Core 2.0更改为2.1,并尝试运行测试,但没有成功。 步骤3:关闭并打开VS2017,然后尝试运行。好极了!!!有效 :-) 不要错过尝试最后一步;-) 希望这可以帮助像我这样的人。