2017-08-03 43 views

回答

0

是的。我已經自動化了很多應用程序,如果有資源ID的話,它們很少。即使是那些使用resource-id的人也要記住,與HTML不同,它們並不總是唯一的 - 許多元素無論如何都可以包含相同的資源ID。

如果我提供了一個資源ID,並且我仔細檢查了頁面元素,並發現該ID是唯一的,我會經常使用它。在我看來,使用XPath的元素通常會更一致地找到,它允許更詳細的定位器。

往往不是,我會做這樣的事情

"//android.widget.TextView[@text='whatever'] 

或進一步:

"//android.widget.TextView[@text='whatever' and @index=1]" 
+0

但我的查詢是我們這是混淆與dexguard一個原生的Android應用程序。混淆後,uiautomator無法查看資源ID。 我們已將資源ID配置保留在dexguard配置文件中,但資源ID仍然不可見。 你已經完成oborgcated native apk的自動化嗎? –

+0

@Eric Lafortune有什麼建議嗎? –

+0

我並不直接熟悉混淆器。它比隱藏更多的資源ID?我的答案的重點是,你不一定要有資源ID來形成可用的定位器。或者你正在做其他需要資源ID的東西? –