如何使用Selenium WebDriver-JS与Edge浏览器一起工作



我正在尝试使用selenium-webdriver-js(JavaScript,而不是Java(来启动边缘。我在启动边缘浏览器时面临问题,所有其他浏览器对我来说都很好。

var wd = require('selenium-webdriver');
var driver = new wd.Builder().forBrowser('MicrosoftEdge').build();
    driver.get('http://www.google.com/ncr');
    driver.quit();

我遇到以下错误。

WebDriverError: Unknown error
    at parseHttpResponse (D:selenium-jsnode_modulesselenium-webdriverlibhttp.js:536:11)
    at doSend.then.response (D:selenium-jsnode_modulesselenium-webdriverlibhttp.js:441:30)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
From: Task: WebDriver.createSession()
    at Function.createSession (D:selenium-jsnode_modulesselenium-webdriverlibwebdriver.js:769:24)
    at Function.createSession (D:selenium-jsnode_modulesselenium-webdriveredge.js:281:41)
    at createDriver (D:selenium-jsnode_modulesselenium-webdriverindex.js:170:33)
    at Builder.build (D:selenium-jsnode_modulesselenium-webdriverindex.js:651:16)
    at Object.<anonymous> (D:selenium-jssampleScriptsyourProductfeaturesstepdefinitionDifferentBrowser.js:23:59)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)

您能帮我获取解决方案或工作代码吗?我不知道我缺少什么

您应该确保通往microsoftwebdriver.msi的路径应有效,并且您的WebDriver应支持您的浏览器版本。

您的代码不包含用于访问Selenium Server和WebDriver的设置。如果未定义硒服务器,则默认情况下将连接到" Localhost:4444"。

const { Builder, By, Key } = require("selenium-webdriver");
async function example() {
    const driver = await new Builder().forBrowser("MicrosoftEdge").build();
    const URL = "https://www.google.com/";
    driver.get(URL);
    driver.manage().window().maximize();
    driver.close();
    driver.quit();
}
example();

您可以从https://developer.microsoft.com/en-us/microsoft-eggh/tools/webdriver/下载Edge WebDriver然后,您可以将其解压缩,然后将msededriver.exe文件复制到项目root或者,您可以在环境变量中配置它。这应该很好

最新更新