示例1:檢查Twitter Bootstrap模式是否已打開。Selenium IDE - 如何檢查元素是否(CSS)可見?
該模式已存在於該頁面上,但在CSS模式被打開之前被CSS隱藏。那麼如何確認實際打開的模式?
示例2:檢查是否顯示了用戶錯誤消息div。
錯誤消息div始終存在,但在CSS被隱藏之前一直存在。如何驗證消息是否可見?
示例1:檢查Twitter Bootstrap模式是否已打開。Selenium IDE - 如何檢查元素是否(CSS)可見?
該模式已存在於該頁面上,但在CSS模式被打開之前被CSS隱藏。那麼如何確認實際打開的模式?
示例2:檢查是否顯示了用戶錯誤消息div。
錯誤消息div始終存在,但在CSS被隱藏之前一直存在。如何驗證消息是否可見?
你可以嘗試使用verifyVisible命令。這看着CSS來查看是否設置了可見性或顯示。如果其中任何一個可見,則返回true,否則返回false。 您需要傳入定位器。使用由css控制的模態元素。
下面可能對您有幫助。
只要將您的元素傳遞給此方法,它將返回true,如果該元素在dom中可見,則返回false。
isElementPresent(WebDriver driver,By by)
{
driver.manage().timeouts().implicitlyWait(0, TimeUnit.SECONDS);
try
{
driver.findElement(by);
return true;
}
catch(Exception e)
{
return false;
}
finally
{
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
}
欲瞭解更多信息請參閱this博客文章
答1:
您可以通過檢查Web元素的Presence
或Visibility
在模態檢查的模態。
答2:
您可以檢查錯誤消息的Visibility
參數。
要檢查元素存在:
if(driver.findElements(By.xpath("value")).size() != 0){
System.out.println("Element is Present");
}else{
System.out.println("Element is Absent");
}
或者
if(driver.findElement(By.xpath("value"))!= null){
System.out.println("Element is Present");
}else{
System.out.println("Element is Absent");
}
檢查可見:
if(driver.findElement(By.cssSelector("a > font")).isDisplayed()){
System.out.println("Element is Visible");
}else{
System.out.println("Element is InVisible");
}
'findElement'不一樣,如果該元素是返回null找不到,但會拋出一個'ElementNotFoundException' 。請參閱[文檔](http://www.seleniumhq.org/docs/03_webdriver.jsp#locating-ui-elements-webelements) –