Pass BrowserMob Proxy to Sauce Labs - "The proxy server is refusing connections" Error
I figured out the answer.
Start Sauce Connect, and pass proxy server information
java -jar Sauce-Connect.jar myname xxxxxx -p localhost:9091
Running the above command will pass all requests to localhost 9091 port, and you may use
netcat
to confirm.nc -l 9091
Run Java Client
ProxyServer proxyServer = new ProxyServer(9091);proxyServer.start(); Proxy proxy = proxyServer.seleniumProxy();DesiredCapabilities capabilities = DesiredCapabilities.firefox();// DO NOT set proxy for RemoteWebDriver// capabilities.setCapability(CapabilityType.PROXY, proxy);capabilities.setCapability("version", "5");capabilities.setCapability("platform", Platform.XP);this.driver = new RemoteWebDriver( new URL("http://myname:xxxxxx@ondemand.saucelabs.com:80/wd/hub"), capabillities);
The Java Client should starts a proxy at Port 9091. Unlike using
FirefoxDriver
directly, proxy should not be set in capabilities.