2017-08-03 2 views

Répondre

0

Oui. J'ai automatisé de nombreuses applications qui ont peu, voire aucun ID de ressource. Même ceux qui utilisent des ID de ressources gardent à l'esprit que, contrairement au HTML, ils ne sont pas toujours uniques - de nombreux éléments peuvent de toute façon contenir le même ID de ressource.

Si je reçois un ID de ressource et que j'ai examiné les éléments de la page de près et que l'ID est unique, je l'utiliserai souvent. Les éléments sont souvent trouvés de manière plus cohérente en utilisant XPaths, à mon avis, ce qui permet un localisateur beaucoup plus détaillé.

Plus souvent qu'autrement, je vais faire quelque chose comme

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

ou plus:

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

Mais ma requête est que nous avons une application native Android qui est obscurcie avec dexguard. après obfuscation uiautomator est incapable de voir les identifiants de ressource. nous avons gardé la configuration des identifiants de ressources dans le fichier de configuration dexguard mais les identifiants de ressources ne sont toujours pas visibles. avez-vous fait de l'automatisation sur apk libération native obfucated? –

+0

@Eric Lafortune une suggestion? –

+0

Je ne suis pas directement familier avec l'obfuscator. Est-ce qu'il cache plus que l'ID de ressource? Le but de ma réponse est que vous n'avez pas nécessairement besoin d'avoir des identifiants de ressources pour former des localisateurs utilisables. Ou faites-vous quelque chose d'autre qui nécessite les ID de ressources? –