I use Selenium 2.35.0 and configure proxy settings like:
DesiredCapabilities cap = new DesiredCapabilities();
org.openqa.selenium.Proxy proxy = new org.openqa.selenium.Proxy();
proxy.setHttpProxy(proxyStr).setFtpProxy(proxyStr).setSslProxy(proxyStr);
cap.setCapability(CapabilityType.PROXY, proxy);
driver = new FirefoxDriver(firefox, profile, cap);
When I need to change proxy settings I force to restart webdriver and speify other "proxyStr".
How I can reach this changing without of webdriver restart?
When you set a proxy for any given driver, it is set only at the time WebDriver session is created; it cannot be changed at runtime. Even if you get the capabilities of the created session, you won't be able to change it. So the answer is, no, you must start a new session if you want to use different proxy settings.
来源:https://stackoverflow.com/questions/19565426/how-to-change-firefox-web-driver-proxy-settings-at-runtime