码迷,mamicode.com
首页 > 其他好文 > 详细

操作页面元素等待时间

时间:2016-03-23 17:01:50      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:

WebDriver在操作页面元素等待时间,提供两种等待方式:一个为显示等待,另一个为隐式等待

   区别:1)显示等待:明确告诉webDriver按照特定的条件进行等待,条件未达到,,就一直等待。这在等待某个元素需要非常长的时间时非常有效

           2) 隐式等待:告诉webDriver一个最大的超时时间,如果等待条件在超时以前就满足,就立刻执行后续操作而无须等待超时达到

package test;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;

import common.StartFireFox;

public class TestWait {
 
    public static void main(String[] args) {
        WebDriver driver = StartFireFox.start();
        driver.get("http://www.baidu.com");
     
        WebElement login = driver.findElement(By.id("su"));
        WebElement kw = driver.findElement(By.id("kw"));
        kw.sendKeys("selenium");
        login.click();
        //Explicit wait 
        (new WebDriverWait(driver, 10)).until(new ExpectedCondition<Boolean>(){
            public Boolean apply(WebDriver  d){
                return d.getTitle().toLowerCase().startsWith("selenium");
            }
        });
        System.out.println("Page title is: "+driver.getTitle());
        driver.navigate().back();
        //Implicit wait
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        driver.findElement(By.id("kw")).click();
     
        
        driver.quit();
        System.out.println("close firefox browser");
    }
}

 

操作页面元素等待时间

标签:

原文地址:http://www.cnblogs.com/claudia/p/5311678.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!