When I am using a proxy in webdriver like FirefoxDriver, if the proxy is bad then the get method will block forever. I set some timeout parameters, but this did not work out.
This is my code:
FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("general.useragent.override", ua); Proxy p = new Proxy(); p.setHttpProxy(proxy); profile.setProxyPreferences(p); profile.setEnableNativeEvents(true); // create a driver WebDriver driver = new FirefoxDriver(profile); driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS); driver.manage().timeouts().setScriptTimeout(30, TimeUnit.SECONDS); driver.get("www.sina.com.cn")
The call to driver.get will block for ever, but I want it to wait for 30 seconds and if the page is not loaded then throw an exception.
Try this:
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With