当我检查一些元素是可见的时,我这样做:
public void CheckingVisible {
Assert.IsTrue(WebElement.Displayed);
}
它正在运作
当我尝试检查不可见时,我确实喜欢这样:
public void CheckingNotVisible { Assert.IsFalse(WebElement.Displayed); }
以及
public void CheckingNotVisible { Assert.IsTrue(!WebElement.Displayed); }
但在这两种情况下它都不起作用。如何检查元素当前是否不可见/显示?
答案 0 :(得分:0)
您可以使用以下方法,此方法将检查元素是否可见,但在此之前它将检查元素是否可用。
public void CheckVisible() throws Exception
{
boolean eleche,eleche1 = false;
try
{
eleche = driver.findElements(by.xpath("path")).size()!=0;
}catch(InvalidSelectorException ISExcep)
{
System.out.println("Element Not Available in Page.");
}
if(eleche == true)
{
try{
eleche1=driver.findElement(By.xpath("Path")).isDisplayed();
}catch(org.openqa.selenium.NoSuchElementException NSEE)
{
System.out.println("Element Not Visible.");
}
if(eleche1 == true)
{
System.out.println("\nElement is Visible.");
}
}
}
希望我的回答对你有所帮助
谢谢,
Ed D,印度。
答案 1 :(得分:0)
我更像是Java家伙,但我希望以下代码段可以帮助您。在检查其元素可见性之前,您需要确保元素存在。
public boolean isElementVisible(String path)
{
try {
WebElement ele = driver.findElements(by.xpath("path")).get(0);
}
catch (NoSuchElementException e1) {
//System.out.println("Element Not Visible.");
return false;
}
catch(StaleElementReferenceException e2) {
//System.out.println("Element Not Visible.");
return false;
}
catch (InvalidSelectorException e3) {
//System.out.println("Element Not Visible.");
return false;}
return ele.Displayed;
}