Appium 如何等待元素加載

不多說,直接上代碼:

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

import java.util.concurrent.TimeUnit;

/**
 * Created by Administrator on 2015/1/23.
 */
public class TaquTools {

<pre name="code" class="java">    /**
     * 等待元素加載
     *
     * @param driver           driver
     * @param by               定位方式
     * @param waitTime         等待時間
     */
    public static void waitForVisible(WebDriver driver, final By by, int waitTime) {
        WebDriverWait wait = new WebDriverWait(driver, waitTime);
        for (int attempt = 0; attempt < waitTime; attempt++) {
            try {
                driver.findElement(by);
                break;
            } catch (Exception e) {
                driver.manage().timeouts().implicitlyWait(1, TimeUnit.SECONDS);
            }
        }
        wait.until(ExpectedConditions.visibilityOfElementLocated(by));
    }




使用:

TaquTools.waitForVisible(driver, By.id("tvEntranceOne"), 5);// 等待某元素加載,5S未能加載變爲超時

同樣這個方法在WebDriver也是可用


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章