繁体   English   中英

如果浏览器已打开 (Edge Chromium/VB.NET/C#),Selenium 自动化会失败

[英]Selenium Automation fails if Browser Already Open (Edge Chromium/VB.NET/C#)

我正在使用下面的 VB.NET 代码 op open Edge Chromium(在 IE 功能模式下)。 如果没有打开现有的 Edge 窗口,它就可以工作,否则,它只会在现有窗口中打开另一个选项卡,并只显示这是 WebDriver 服务器的初始启动页面。 什么也没发生(见下面的截图)

    Dim ieService = InternetExplorerDriverService.CreateDefaultService(Environment.CurrentDirectory, "IEDriverServer.exe")
    Dim ieOptions = New InternetExplorerOptions
    ieOptions.IgnoreZoomLevel = True
    ieOptions.AddAdditionalCapability("ie.edgechromium", True)
    ieOptions.AddAdditionalCapability("ie.edgepath", "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe")
    Dim driver = New InternetExplorerDriver(ieService, ieOptions, TimeSpan.FromSeconds(60))
    driver.Navigate().GoToUrl("https://example.com")

在此处输入图片说明

一分钟后,它在Dim driver = New InternetExplorerDriver(ieService, ieOptions, TimeSpan.FromSeconds(60))行抛出以下异常

OpenQA.Selenium.WebDriverException: '对远程 WebDriver 服务器的 HTTP 请求 URL http://localhost:52074/session 在 60 秒后超时。

有谁知道如何解决这个问题? (我不想先终止边缘会话然后再开始,因为我希望现有的边缘窗口保持不变)

在已经打开的 Edge 浏览器窗口中自动化 Edge-IE。 请按照以下步骤

  1. 将您尝试在 Edge-IE 浏览器中启动的应用程序包含到 Edge 浏览器的兼容性列表中(edge://compat)
  2. 在调用 Edge-IE 驱动程序初始化之前包含以下命令行以启动 Edge 进程

代码示例

System.Diagnostics.Process.Start(@"msedge.exe", "https://google.com/");
Thread.Sleep(1000);
var dir = "//path of your Edgedriver";
var driver = "IEDriverServer.exe";
if (!Directory.Exists(dir) || !File.Exists(Path.Combine(dir, driver))){
Console.WriteLine("Failed to find {0} in {1} folder.", dir, driver);}
var ieService = InternetExplorerDriverService.CreateDefaultService(dir, driver);
var ieOptions = new InternetExplorerOptions { };
ieOptions.AddAdditionalCapability("ie.edgechromium", true);
ieOptions.AddAdditionalCapability("ie.edgepath", @"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe");
InternetExplorerDriver webdriver = new InternetExplorerDriver(ieService, ieOptions, TimeSpan.FromMinutes(3));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM