首页 > 解决方案 > selenium webdriver MSEdgeDriver 89.0 版的 nuget 包缺少 linux 二进制文件

问题描述

我正在使用以下版本的 webdriver。. .

Selenium.WebDriver.MSEdgeDriver --版本 89.0.774.54

我的代码在 macOS 中运行良好,但尝试在 Linux docker 容器中构建项目对我来说失败了。经过进一步调查,我看到nuget包没有linux的文件夹,

/root/.nuget/packages/selenium.webdriver.msedgedriver/89.0.774.54/driver:
total 20
drwxr-xr-x 5 root root 4096 Apr  7 10:16 .
drwxr-xr-x 5 root root 4096 Apr  7 10:16 ..
drwxr-xr-x 2 root root 4096 Apr  7 10:16 mac64
drwxr-xr-x 2 root root 4096 Apr  7 10:16 win32
drwxr-xr-x 2 root root 4096 Apr  7 10:16 win64

我在这里看不到任何 Linux 文件夹。此外,在 dotnet 构建期间失败的确切命令如下。. .

chmod: cannot access '/root/.nuget/packages/selenium.webdriver.msedgedriver/89.0.774.54/build/../driver//msedgedriver': No such file or directory

显然,构建中的项目恢复步骤无法找到正确的驱动程序。// 在路径的末尾感觉就像构建过程甚至不知道如何识别正确的驱动程序文件夹(macOS/win32/win64),因为 Linux 不存在。

如何解决这个问题?

标签: linuxselenium-webdrivernugetmicrosoft-edge

解决方案


我检查了包文件夹,确实它不包含适用于 Linux 的 Edge 驱动程序。

我建议您可以直接在此页面上下载适用于 Linux 的 Edge WebDriver 。请注意,并非每个版本都有 Linux 版本,Linux 的最新版本是 90.0.810.1。我发现的另一个 Linux 版本是 88.0.692.0。

您也可以尝试查找是否有其他适用于 Linux 的版本,并找到适合您的版本。然后,您可以尝试使用该 WebDriver 在 Linux 上测试 Edge 自动化。


推荐阅读