自动化测试(IDEA+Java+Selenium+testng)(元素的等待)

元素等待的处理

在这里插入图片描述
等待方式1:

线程等待:Thread.sleep(xxxx)(不推荐)

等待方式2:

全局等待:driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS)

    @BeforeMethod
    public void openWeb() throws InterruptedException {
        System.setProperty("webdriver.chrome.driver","D:\\chromedriver_win32\\chromedriver.exe");
        driver = new ChromeDriver();
        driver.get("file:///G:/java+selenium/index.html");
        //全局/显示等待,所有的地方起作用,如果10s之内就正常,那就无需等待,否则会等待20s,然后抛超时异常
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    }

等待方式3

显示等待:
new WebDriverWait(driver, 30).until(ExpectedConditions.presenceOfElementLocated(By))

    public void waitTest(){
        driver.findElement(By.className("wait")).click();
        //隐式等待,如果没有满足until后面的值,会等待5s,然后抛超时异常,如果5s之内就正常了,那就无需等待
        WebDriverWait webDriverWait = new WebDriverWait(driver,5);
        webDriverWait.until(ExpectedConditions.presenceOfElementLocated(By.className("red")));
        String text = driver.findElement(By.xpath("//*[@id=\"display\"]/div[1]")).getText();
        System.out.println(text);
    }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值