我正在尝试将我的SeeTest套件转换为 Appium,但我遇到了一个大问题:
我无法按@id
属性选择元素。当我尝试按 ID 选择时,它显示“找不到元素”。当我通过 uiautomateviewer 查看 apk 时,没有 element@id
可见。
SeeTest 要求 apk 是“仪表化的”,以便通过@id
. Appium 是否有任何等效的“仪器”?
一个好的经验法则是,如果它没有出现在 Appium 检查器中,就不要使用它。你可以做的事情是:
driver.findElement(By.xpath("//<UIElementType[contains(@<identifier>, '<identifier value>')]>");
标识符可以在哪里
名称或内容描述
标签
文本
还有一些。
希望这将有助于您的更改。
public void athenaclick(String element) {
WebElement webElement = driver.findElement(By.id(element));
webElement.click();
System.out.println("Click element: "+element);
}
在 seetest 中,当您检测时,您会获得在 appium 中可能不可用的额外属性,例如:文本颜色,因为 seetest 是付费工具,而 appium 是开源的。
原来这是因为 Appium 仅支持 Android API 级别 18+ 的 id 选择。我 17 岁,所以我切换到 Selendroid Appium 后端。