首页 文章

如何使用Appium通过selenium找到警报对话框?

提问于
浏览
3

在app中以这种方式实现了一个对话框:

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Something");
builder.setTitle("Something");
dialog = builder.create();
dialog.show();

我怎么能在Appium测试脚本中找到这个元素?

driver.switchTo().alert(); 抛出 NotImplementError

driver.findElement(By.tagName("AlertDialog")) 无效

我在Github上发现了这个问题Alert methods NYI . 这有什么解决方法吗?

顺便说一句,我不会在该对话框上单击“确定”或“取消”,我将要等到该对话框自动消失 .

提前致谢 .

3 回答

  • 0

    请根据您的需要使用以下代码:

    等待警报出现:

    wait.until(ExpectedConditions.alertIsPresent());
    

    等待警报消失:

    wait.until(!ExpectedConditions.alertIsPresent());
    
  • 3

    等待警报消失:

    wait.until(ExpectedConditions.not(ExpectedConditions.alertIsPresent()));
    
  • 1

    对我来说,当我这样做时,可以通过OK按钮接受警告对话框

    driver.findElement(By.name("OK")).click()
    

    但是在点击操作完成后,我的程序停止检测元素

相关问题