我正在尝试使用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或者,您可以在环境变量中配置它。这应该很好