Appium按ID选择元素

时间:2016-09-16 18:49:29

标签: android appium qa

我正在尝试将我的SeeTest套件转换为Appium,但我遇到了一个大问题:

我无法按<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.15.0/moment-with-locales.min.js"></script>属性选择元素。当我尝试按ID选择时,它会显示“找不到元素”。当我通过uiautomateviewer查看apk时,没有元素@id可见。

SeeTest要求apk为“已检测”,以便按@id进行选择。 Appium有“仪器”吗?

3 个答案:

答案 0 :(得分:0)

一个好的经验法则是,如果它没有出现在Appium检查器中,请不要使用它。你可以做的是:

driver.findElement(By.xpath("//<UIElementType[contains(@<identifier>, '<identifier value>')]>");

标识符可以是

  • name或content-desc

  • 标签

  • 文本

还有一些。

希望这对您的更改有所帮助。

答案 1 :(得分:0)

public void athenaclick(String element) {
    WebElement webElement = driver.findElement(By.id(element));
    webElement.click();
    System.out.println("Click element: "+element);
}   

在seetest中,当你在仪器上获得额外的属性时可能无法在appium中使用,例如:text color,因为seetest是一个付费工具,而appium是一个开源。

答案 2 :(得分:0)

原来这是因为Appium仅支持使用Android API级别18+的id进行选择。我17岁,所以我切换到Selendroid Appium后端。