我正在使用python api将一些Selenium RC测试翻译成Selenium WebDriver。在Selenium WebDriver中,我注意到了这一点 driver.get( 'http://...' )
似乎在继续之前等待整个页面加载。有没有办法不等待页面加载?我要求的一些页面有很多外部资源可能需要很长时间才能加载。我宁愿等待DOM上的元素出现,而不是等待加载所有内容。由于这个原因,我的一些测试似乎在WebDriver中需要两倍的时间。
我正在使用python api将一些Selenium RC测试翻译成Selenium WebDriver。在Selenium WebDriver中,我注意到了这一点 driver.get( 'http://...' )
似乎在继续之前等待整个页面加载。有没有办法不等待页面加载?我要求的一些页面有很多外部资源可能需要很长时间才能加载。我宁愿等待DOM上的元素出现,而不是等待加载所有内容。由于这个原因,我的一些测试似乎在WebDriver中需要两倍的时间。
是的,不是。截至Selenium 2.24.1, 对此的支持仅在Firefox中 - 您必须以特殊的“模式”运行它:
FirefoxProfile fp = new FirefoxProfile();
fp.setPreference("webdriver.load.strategy", "unstable");
WebDriver driver = new FirefoxDriver(fp);
你甚至可以设置 如果你愿意,超时。此方法在除Firefox之外的任何浏览器中都会失败,并且在没有不稳定策略的情
driver.manage().timeouts().pageLoadTimeout(5, TimeUnit.SECONDS);