当咱们的程序执行时须要页面某个元素,而此时这个元素还未加载完成,webdriver会自动跳过执行下一个任务;java
须要让driver延迟,作隐式等待web
System.setProperty("phantomjs.binary.path", "D:\\source\\phantomjs-2.0.0-windows\\bin\\phantomjs.exe"); ff.manager().timeouts().imlicitlyWait(10,TimeUnit.SECOONDS);
String userAgent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36"; DesiredCapabilities caps = new DesiredCapabilities(); caps.setCapability(PhantomJSDriverService.PHANTOMJS_PAGE_SETTINGS_PREFIX + "userAgent", userAgent); PhantomJSDriver p = new PhantomJSDriver(caps);
selenium 3.0 控制新版本firefoxchrome
System.setProperty("webdriver.firefox.marionette","D:\\dev\\lrh\\source\\geckodriver.exe"); FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("permissions.default.image", 2); WebDriver driver = new FirefoxDriver(); driver.get("http://www.taobao.com"); driver.quit();
chrome driver听说是chromium团队在维护,试了下很稳定。赞一个windows