安装Microsoft.Net.Test.Sdk不能修复“无法找到testtesthost.dll。请发布测试项目,然后重试。” -我还能做什么?

时间:2019-08-08 01:27:55

标签: c# nunit

更新:我没有意识到我使用的是类库(.NET Standard)而不是类库(.NET Framework),或者说实话两者是不同的。我对C#很陌生。因此,当我从.NET Standard更改为.NET Framework时,我的代码开始正常工作。

我想使用C#和Selenium创建UI自动化框架,并且我在线上关注了一些有关如何执行此操作的教程。我在Visual Studio中使用NuGet Manager安装了以下程序:

  1. Selenium.Webdriver
  2. NUnit
  3. NUnit3TestAdapter

我继续创建一个非常简单的测试:

[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>

1 个答案:

答案 0 :(得分:0)

尝试调试单元测试时遇到此错误。以下是我尝试的步骤。 第1步:安装了Microsof.TestPlatform.TestHost并尝试运行测试,但没有成功。 第2步:将目标框架从.NET Core 2.0更改为2.1,并尝试运行测试,但没有成功。 步骤3:关闭并打开VS2017,然后尝试运行。好极了!!!有效 :-) 不要错过尝试最后一步;-) 希望这可以帮助像我这样的人。