如何使用Appium在开始和测试期间“等待活动”?

我正在使用 appium 启动已安装的应用。

初始化驱动程序后。如何让它轮询等待,直到显示某些活动?

我只看到这种在启动时等待活动的方式

cap.setCapability("app-wait-activity", "activity-to-wait-for");

还有其他方法吗?未初始化时如何等待另一个特定活动。点击按钮后说?

只?sleep x seconds


答案 1

特定活动表示正在显示某些特定元素。我使用以下代码等待屏幕上的某些特定元素:

WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.elementToBeClickable(By
        .xpath("//android.widget.Button[contains(@text, 'Log In')]")));

艺术

WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.presenceOfElementLocated(By
            .xpath("//android.widget.TextView[contains(@resource-id, 'action_bar_title')]")));

答案 2
WebDriverWait wait = new WebDriverWait(driver,20);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("about_me"))); 

如果您想详细了解如何在Appium中使用隐式和显式等待,请访问本教程


推荐