WebDriverError:使用Selenium(Javsacript)打开第二个边缘窗口时发生未知错误

时间:2019-05-15 06:19:26

标签: javascript selenium-webdriver selenium-edgedriver

我正在使用Selenium创建Edge浏览器的自动化工具,在这里我需要同时打开带有三个不同URL的三个Edge窗口。 First Edge浏览器窗口成功启动,但是调用第二个URL的函数 openEdgeBrowser 时,它将引发异常: WebDriverError:未知错误

const webdriver = require('selenium-webdriver');
const edgedriver = require('edgedriver');
const edge = require('selenium-webdriver/edge');


var openEdgeBrowser = async function(url){

    try {
        let edgeService = await new edge.ServiceBuilder(edgedriver.path);
        let browser = await new webdriver.Builder().forBrowser('MicrosoftEdge').setEdgeService(edgeService).build();
        await browser.get(url);
        console.log('Browser launched successfully with url: ' + url);
    } catch(e) {
        console.log.end(`Error in launching edge browser, Exception: ${e}`);
    }
};

我希望同时运行Edge的三个实例。

1 个答案:

答案 0 :(得分:1)

问题在于Edge不支持多个实例:

  

您好,这是一个已知问题。

     

我刚刚检查了反馈中心,而我只是   请参阅Microsoft内部发布此问题。您可以将此添加到   反馈中心?使用搜索栏打开“反馈中心”应用程序   (Win + s)并输入“反馈中心”

     

我知道的唯一解决方法   将Selenium网格与多个Windows客户端一起使用。客户   可以是Hyper-V实例。

     

感谢您报告此问题并希望   我为您提供了更好的答案。 :-/史蒂夫

https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/17754737/

在Twitter上也注意到了同样的情况。

https://twitter.com/instylevii/status/783480823445987329

我找不到任何迹象表明该错误已得到修复,因此我将假定它仍然未解决。在41.16299.15.0版中,它绝对仍然非常出色,并且我在发行说明中找不到任何提及42版中的修复程序。