一.等待
- 隱式等待
WebDriver driver = new FirefoxDriver();
driver.get("url");
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);// 總共等待20秒,如果20秒後,元素還不存在,就會拋出異常 org.openqa.selenium.NoSuchElementException
WebElement element = driver.findElement(By.cssSelector(".red_box"));
((JavascriptExecutor)driver).executeScript("arguments[0].style.border = \"5px solid yellow\"",element);
2.顯示等待
driver.get("url");
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector(".red_box")));//等待條件
//elementToBeClickable(By locator); 頁面元素是否在頁面上可用和可被單擊
//elementToBeSelected(WebElement element); 頁面元素處於被選中狀態
//presenceOfElementLocated(By locator);頁面元素在頁面中存在
//textToBePresentInElement(By locator);在頁面元素中是否包含特定的文本
//textToBePresentInElementValue(By locator, java.lang.String text);頁面元素值
//titleContains(java.lang.String title);標題 (title)
WebElement element = driver.findElement(By.cssSelector(".red_box"));
((JavascriptExecutor)driver).executeScript("arguments[0].style.border = \"5px solid yellow\"",element);