Vs2019无法运行NUnit测试-'testhost.x86.exe'的问题

时间:2019-09-24 12:21:54

标签: c# windows visual-studio nunit visual-studio-2019

我使用NUnit创建了一个硒测试框架,其中有一个测试可以打开页面并声明页面标题。

但是,当我尝试运行测试时,即使使用Debug也不执行任何操作,它似乎可以启动和停止。测试保持在not run状态。

当我在{上设置一个断点并使用debug运行测试时,没有任何变化。它启动后立即停止,而无需运行测试。

测试:

[Test]
[TestCase(Browser.Chrome)]
public void ValidateWebDriverLaunches(Browser browser)
{
    Driver = StaticWebDriverFactory.GetLocalWebDriver(browser);
    Driver.Url = "https://example.com/";

    string title = Driver.Title;
    Assert.AreEqual(true, title.Contains("Example Domain"), "Title is not matching");
}

错误日志

'testhost.x86.exe' (CLR v4.0.30319: Domain 2): Unloaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll'
'testhost.x86.exe' (CLR v4.0.30319: Dependency finder domain): Unloaded 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll'
The thread 0xcc has exited with code 0 (0x0).
'testhost.x86.exe' (CLR v4.0.30319: Domain 3): Unloaded 'C:\WINDOWS\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll'
'testhost.x86.exe' (CLR v4.0.30319: Dependency finder domain): Unloaded 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\Extensions\TestPlatform\Microsoft.VisualStudio.TestPlatform.ObjectModel.dll'
The thread 0x2f90 has exited with code 0 (0x0).
The thread 0x2f80 has exited with code 0 (0x0).
The program '[8948] testhost.x86.exe' has exited with code 0 (0x0).

我已经设置了环境变量

__UNITTESTEXPLORER_VSINSTALLPATH__

指向

C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE

正如某些人所建议的那样。我发现的唯一其他建议是更新VS17,但是我使用的是VS19,找不到有关此版本的任何信息。

4 个答案:

答案 0 :(得分:0)

我发现问题出在我自己。

我安装了NUnit3TestAdapter nuget软件包,它现在可以按预期工作。

答案 1 :(得分:0)

需要将Visual Studio中的流程体系结构切换到64。

Visual Studio:“测试”选项卡-> AnyCPU项目的流程体系结构-> 64

答案 2 :(得分:0)

我的问题真的很奇怪,我在AppConfig中的连接字符串在上方,将其移动到下面可以解决我的问题。

答案 3 :(得分:0)

在寻求解决方案的过程中,我发现了这个提示以帮助了解过早退出会发生什么:

转到测试/选项并将日志记录级别设置为“跟踪(包括平台日志)。

在跟踪中,它说“NUnit 未能从 nuget 包引用加载 c:\...\netcoreapp3.1。NUnit 测试适配器 3.16.1 的下一步记录了测试执行完成,即使没有运行了测试。难道我们的 Nuget pacakage 不包括 netcore?会回发