首页 > 解决方案 > Appium 在移动设备上点击之前不会找到元素。如何找到它没有焦点的元素?

问题描述

我是自动化测试的新手。我正在尝试自动化 UI,并想点击汉堡菜单。

我试过了

1. MobileElement el1 = driver.findElement(By.xpath("//*[@content-desc='" + "Menu" + "']"));
    el1.click();
2. MobileElement el1 = driver.findElement(By.name("Menu)"));
    el1.click();
3. MobileElement el1 = (MobileElement) driver.findElementByXPath("//android.widget.ImageButton[@content-desc=\"Menu\"]");

在所有情况下,我都收到了找不到元素的错误。

但是,当我在执行 el1.click() 之前在测试中手动点击菜单时,测试会成功运行。就像菜单元素获得焦点并且 appium 找到它一样。那么如何在不点击或获得焦点的情况下执行此操作呢?

标签: androidautomationautomated-testsappium

解决方案


尝试按名称查找元素。在 UI Inspector 搜索之前使用名称或任何其他定位器。如果它通过几次尝试成功搜索。有时元素具有动态标识。


推荐阅读