1

我已经在我的电脑上安装了 IE 和 chrome 浏览器。我想从带有所有附加组件和默认设置的原始浏览器运行我的 selenium 脚本。

我能够找到具有某些功能的浏览器的 *.exe。但无法在浏览器中编写和打开链接 (driver.get())。请参考以下代码。

DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
cap.setCapability(InternetExplorerDriver.INITIAL_BROWSER_URL, DriverTestNG.url);
DesiredCapabilities.internetExplorer().setCapability("ignoreProtectedModeSettings", true);
System.setProperty("webdriver.ie.driver", "src/main/resources/Framework/Drivers/Windows/IEDriverServer_Win32_2.40.0/IEDriverServer.exe");
cap.setCapability("IE.binary", "C:\\Program Files\\Internet Explorer\\iexplore.exe");
cap.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);
cap.setJavascriptEnabled(true);
cap.setCapability("requireWindowFocus", true);
cap.setCapability("enablePersistentHover", false);
cap.setCapability("elementScrollBehavior", 1);
cap.setCapability("cssSelectorsEnabled", true);
cap.setCapability("nativeEvents", true);
driver = new InternetExplorerDriver(cap);

可能是我错过了一些东西。我不确定硒网络驱动程序是否支持此功能。

请指导我。

提前致谢。

4

1 回答 1

2

关于您的标题,您无法在不使用 a 的情况下运行 Internet Explorer 或 Chrome,webDriver因为您需要webDriver作为 API 来访问 IE 或 chrome 的功能。

但是您仍然可以使用扩展程序和默认设置。您看不到任何扩展运行的原因chromeDriver是它总是为每个测试会话创建一个新的临时配置文件。如果您想使用扩展和设置运行您自己的自定义配置文件,您必须通过定义user-data-dir.

您可以在此处找到这些功能: https ://sites.google.com/a/chromium.org/chromedriver/capabilities

例子:

ChromeOptions options = new ChromeOptions();
options.addArguments("user-data-dir=C:/Users/user_name/AppData/Local/Google/Chrome/User Data");

您还可以使用以下方式指定扩展: https ://sites.google.com/a/chromium.org/chromedriver/extensions

我不使用IEdriver,所以我不能告诉你它是如何与 IE 一起工作的,但据我所知,Internet Explorer 没有配置文件,并且扩展名是在注册表中的某个地方管理的。所以我会假设在运行测试之前安装的扩展也可以通过 trough 获得IEWebDriver

于 2015-09-16T07:29:53.090 回答