其他条件不适用于appium

时间:2017-01-20 11:54:34

标签: android appium

我试图为Android应用程序编写appium测试脚本,在一种情况下等待带有Yes和No按钮的对话框,该对话框不会一直出现,如果对话框出现我想要单击是,否则不会出现下一个案例,我已经写了下面的条件,但问题是else部分不起作用。它只显示对话框(if部分)。

if (driver.findElement(dialog).isDisplayed()){
        driver.findElement(yesBtn).click();
        waitForVisibilityOf(fab);
        return new OnBoardingFbReg(driver);
    }

    else {
        waitForVisibilityOf(fab);
        return new OnBoardingFbReg(driver);

    }

2 个答案:

答案 0 :(得分:0)

你的if()不起作用,因为如果没有显示该元素,函数isDisplayed()将返回Exception。 请执行以下操作:

try{
    if (driver.findElement(dialog).isDisplayed()){
            driver.findElement(yesBtn).click();
            waitForVisibilityOf(fab);
            return new OnBoardingFbReg(driver);
        }

    }catch(NoSuchElementException e){
            waitForVisibilityOf(fab);
            return new OnBoardingFbReg(driver);
      }

答案 1 :(得分:0)

试试这个,这将有助于

 if(ds.findElements( By.id("id") ).size() != 0)
{

driver.findElement(yesBtn).click();
}else
{
  System.out.println("Do the second operation");}

}