从java禁用系统代理

时间:2016-11-28 14:45:29

标签: java selenium proxy browsermob

我的测试脚本使用Selenium WebDriver和BrowserMob代理服务器来模拟慢速连接。使用BrowserMob代理启动Internet Explorer WebDriver将打开系统代理。它会影响到互联网的所有连接(eclipse插件更新,邮件对应和其他应用程序)。因此,我需要在测试脚本结束时禁用系统代理。如何从java做到这一点?

注意:停止使用BrowserMob代理服务器不会禁用系统代理设置。

1 个答案:

答案 0 :(得分:1)

我在Internet Explorer WebDriver中找到了解决方案。 需要启动具有IE特定所需功能的Web驱动程序,如下所示:

BrowserMobProxy server = new BrowserMobProxyServer();
server.start();

Proxy proxy = ClientUtil.createSeleniumProxy(server);

DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
capabilities.setCapability(InternetExplorerDriver.IE_USE_PRE_PROCESS_PROXY, true);
capabilities.setCapability(CapabilityType.PROXY, proxy);

WebDriver driver = new InternetExplorerDriver(capabilities);

此处有更多信息https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities