【发布时间】:2017-12-13 14:58:04
【问题描述】:
Appium 无法使用 id 定位器(resource-id)来识别元素,而我们可以使用 Accessibility Id 定位器来识别相同的元素。
【问题讨论】:
-
您没有说明应用类型 - 是混合应用还是原生应用?
-
原生应用.....
-
有些时候开发者会为某些元素设置动态资源id,请检查资源id是否改变。如果 id 每次都相同,您可以尝试以下代码: driver.find_element_by_id("your_Element_ID") 在此我们必须按 id 搜索元素,因为 appium 会将 resource-id 视为 id 。
-
资源 id 始终相同。但下面不起作用: driver.findElementById("rptRole__ctl0_rptCommunicationItems__ctl1_Repeater1__ctl0_dl_attachments__ctl0_lnk_attachment").click() 下面起作用: driver.findElementByAccessibilityId("message_from_paul_mysay.pdf").click();但可访问性的问题在于,它是动态的,所以我不能使用它。我注意到的一件事是,在这种情况下,资源 ID 不以包名称开头。
标签: appium appium-android