Python,Appium,UIAutomator2 vs 1,Selenium - resourceID搜索没有意义

时间:2018-04-23 23:54:24

标签: android python selenium appium

首先发帖,请善待。我搜索的时间超过了我承认的时间 - 绝望地回答了一个看似简单的答案。

几个小时后,我能够从Selenium过渡到Appium,并正确设置所有内容,然后直接自动启动到我附加的Moto G4 Play。与the Appium桌面完美配合使用,尽管这是我第一次进入Android内部,我使用Python/Appium的初步测试让我自动点击了#34;很好地通过应用程序。

但是,我碰到了一堵砖墙,因为我根本无法滚动屏幕(在我的脚本中)。我想我需要在Appium中指定我想要使用的UIAutomator2所需的功能,因为它有更多的滚动选项。但是,立即UIA2引擎无法找到(通过resourceID)与UIA1相同的元素。我不明白。因此,我决定打印python脚本可以在页面上检测到的每个元素(使用UIA2),在这些元素中,它清楚地显示了UIA1找到的确切ResourceID。在这一点上,我迷失了。我可以根据要求提供具体细节,但希望有人能够开始指出我正确的方向。

感谢。

编辑:其他信息和代码(感谢反馈data_garden)。以下是从UIA1UIA2失败的代码行:

HeadMaster = WebDriverWait(self.driver, 10).until(EC.presence_of_element_located((By.ID, "Head__master-id")))

UIA2上抛出了TimeoutException(找不到元素):

元素在那里,毫无疑问。我不仅通过我的脚本列出了它,还使用Appium桌面和UIInspector进行了检查。

它可能与某些已弃用的符号有关吗?怀疑它,考虑到下划线和破折号是非常主流的。

修改

还想添加此问题正在运行Appium Server 1.7.2

0 个答案:

没有答案