OpenQA.Selenium.WebDriverException:“无法在 http://localhost:20548/ 上启动驱动程序服务”

Fra*_*tal 10 c# webdriver selenium-webdriver microsoft-edge

当我尝试打开 EdgeDriver 时收到以下错误。

OpenQA.Selenium.WebDriverException: 'Cannot start the driver service on http://localhost:20548/'
Run Code Online (Sandbox Code Playgroud)

FirefoxDriver 和 ChromeDriver 工作得很好。

在此输入图像描述

这是驱动的问题吗?

端口 20548 上没有任何运行。以下代码不返回任何内容。

C:\WINDOWS\system32>netstat -a -o | find "20548"
Run Code Online (Sandbox Code Playgroud)

除了将 Selenium.WebDriver.MicrosoftWebDriver NuGet 下载到我的项目中之外,我还需要做其他事情吗?

在此输入图像描述

我的计算机上唯一需要安装的软件是最新版本的 Microsoft Edge,对吗? 在此输入图像描述

Zhi*_* Lv 6

OpenQA.Selenium.WebDriverException:“无法在http://localhost:20548/上启动驱动程序服务”

对于这个问题,可能是WebDriver的进程仍在后台运行。请尝试启动任务管理器来查看并结束它(如果有)。

否则,您可以尝试使用以下代码来分配 webdeiver 服务器:

        var driverpath = @"C:\Program Files (x86)\Microsoft Web Driver"; //find the web driver path
        var driver = new EdgeDriver(driverpath);
        // Navigate to Bing
        driver.Url = "https://www.bing.com/";

        // Find the search box and query for webdriver
        var element = driver.FindElementById("sb_form_q");

        element.SendKeys("webdriver");
        element.SendKeys(Keys.Enter);

        Console.ReadLine();
        driver.Quit();
Run Code Online (Sandbox Code Playgroud)

此版本的 MicrosoftWebDriver.exe 与已安装的 Windows 10 版本不兼容。

请查看本文,根据您的Edge浏览器版本下载相关的Microsoft WebDriver版本。

那么,您可以参考这篇文章来使用WebDriver。


Fra*_*tal 4

我尝试运行位于我的项目(项目名称,Test)的 bin 目录中的 MicrosoftWebDriver.exe。这给了我我需要的答案。

在此输入图像描述

我从以下网站下载了正确的驱动程序:

https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/#downloads

在此输入图像描述

=================================================== ======

进一步更新和解决方案:如何知道要获取哪个驱动程序......

我终于找到了正确的驱动程序。有两种方法可以获取驱动程序。

  1. 从 Microsoft 开发者网站下载
  2. 在Visual Studio NuGet管理器中找到它并让管理器将其配置到您的项目中(首选方法)

方法一:如何知道要下载哪个驱动程序

  1. 前往微软开发者网站
  2. 查找版本号与 Edge 浏览器上的版本号相同的版本 在此输入图像描述
  3. 配置您的项目以查找并使用您下载的 MicrosoftWebDriver.exe

方法2:如何知道要下载哪个驱动程序

  1. 在 VS 中打开测试项目并打开 NuGet 包管理器
  2. 浏览 Selenium.WebDriver.MicrosoftWebDriver
    • 找到版本号后半部分与 Edge 浏览器 Microsoft EdgeHTML 版本号后半部分相匹配的 Webdriver 版本(一点也不明显)。 在此输入图像描述
  3. 单击安装按钮。一切都会在您的项目中自动配置,以便您可以自动开始使用驱动程序

  4. 将几行 Selenium 代码添加到您的测试项目中,这将打开边缘浏览器(如原始问题所示)。