2017-01-20 2 views
0

Я пытаюсь написать скрипт appium test для приложения для Android, в одном случае, ожидая диалогового окна с кнопкой «Да» и «Нет», это диалоговое окно не будет отображаться всегда, если появится диалоговое окно Я хочу нажать «Да», иначе не появится, что это будет в следующем случае, я написал условие ниже, но проблема в том, что часть else не работает. появляется только его рабочий диалог (if часть).else условие не работает в appium

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

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

    } 
+0

Это то, что вы делаете. – Nabin

+0

описание отредактировано –

ответ

0

ваш, если() не работает, потому что если не отображается элемент, функция возвращает 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); 
     } 
0

Попробуйте это, и это поможет

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

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

}