【问题标题】:Selenium with GeckoDriver don't work on ASP.net Core带有 GeckoDriver 的 Selenium 在 ASP.net Core 上不起作用
【发布时间】:2022-04-05 22:15:33
【问题描述】:

我正在尝试在asp.net core (dotnet new webapi) 中使用GeckoDriver。但是,它总是抛出异常:

System.InvalidOperationException: 'Failed to start browser C:\Program Files\Mozilla Firefox\firefox.exe: other os error (SessionNotCreated)'

我尝试使用 .net 核心控制台 (dotnet new console),它工作正常。

还有一点,我在asp.net core 中使用ChromeDriver 还是可以的。

为什么? asp.net core.net core console 有什么区别?为什么ChromeDriver 工作得这么大胆?

这是我的项目的信息:

Dotnet version: .net core 3.0
Firefox version: 75.0 (64 bit)
Selenium version: 3.141.0
GeckoDriver version: 0.26.0.1

谢谢

更新 1: 也许这是我问题的答案。 我不知道具体为什么。 但是,GeckoDriver 在 Project Profile 上运行良好。

默认情况下,当我 F5 我的项目时,它使用IIS Express 运行。我切换到项目配置文件(默认情况下它将在https://localhost:5001 中运行)。 它正在工作!

【问题讨论】:

  • 检查你的geckodriverfirefox浏览器的版本兼容性??
  • 是的,兼容性!
  • 你能贴出你做的那段代码吗?
  • IWebDriver webDriver = new FirefoxDriver();
  • 你有什么想法吗?

标签: c# selenium asp.net-core geckodriver


【解决方案1】:

这可能是一个远景,但这里有任何更新吗?我遇到了同样的问题。 ChromeDriver 和 EdgeDriver 可与 ASP.Net Core 5 和 6 一起使用,但 FirefoxDriver 会引发上述错误。我尝试过 32 位和 64 位版本的 FirefoxDriver。

当我将配置文件切换为使用项目配置文件时,它也可以工作。项目配置文件使用 commandName: Project 选项,该选项使用 Kestrel Web 服务器而不是 IISExpress。所以看起来IIS是罪魁祸首?我可以让我的应用程序在本地运行,但是当我将它部署到 Web 服务器时,它会出错,我假设它是因为它可以在 IIS 下运行?

【讨论】:

  • 正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-18
  • 2022-01-22
  • 2022-11-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多