1 - Introduction
Parfois, certains éléments de la vue ne peuvent pas être directement trouvés ou cliqués parce qu'ils n'ont pas d'identifiant, de texte, de description ou de classe pertinents.
Vous pouvez trouver un autre élément (parent ou enfant) pour accéder à l'élément que vous recherchez par le chemin des éléments dans la hiérarchie de la vue.
Chaque commande de type Find met en mémoire le dernier élément trouvé. Une autre commande qui se termine par LastElementFound
peut être utilisée, par exemple la commande clickOnLastElementFound
pour cliquer sur le dernier élément trouvé.
2 - Liste des commandes de recherche
Commande Exemple Description findByText Trouve le nième élément dont le texte ou le content-desc contient le sélecteur donné. L'élément est enregistré comme le dernier élément trouvé. NON-SENSIBLE-CASSE RANG PAR DEFAUT : 1 RANG OPTIONNEL COMPATIBILITE : UNIVERSELLE findByTextExact Trouve le nième élément dont le texte ou le content-desc correspond exactement au sélecteur donné. L'élément est enregistré comme le dernier élément trouvé. SENSIBLE-CASSE RANG PAR DEFAUT : 1 RANG OPTIONNEL COMPATIBILITE : UNIVERSELLE findById Trouve le nième élément à l'aide du sélecteur id. L'élément est enregistré comme le dernier élément trouvé. RANG PAR DEFAUT : 1 RANG OPTIONNEL COMPATIBILITE : UNIVERSELLE findByClass Trouve le nième élément avec le sélecteur de classe. L'élément est enregistré comme le dernier élément trouvé. RANG PAR DEFAUT : 1 RANG OPTIONNEL COMPATIBILITE : UNIVERSELLE findParentLastElementFound Trouve le parent du dernier élément trouvé. Le parent est sauvegardé et remplace le dernier élément trouvé. COMPATIBILITE : UNIVERSELLE findChildByClassLastElementFound Trouve le premier enfant du dernier élément trouvé en utilisant la classe donnée comme sélecteur. Le parent est sauvegardé et remplace le dernier élément trouvé. COMPATIBILITE : UNIVERSELLE findChildByIndexLastElementFound Trouve par index un enfant du dernier élément trouvé. L'index correspond à l'index dans le vidage d'écran. RANG PAR DEFAUT : 0 RANG OPTIONNEL COMPATIBILITE : UNIVERSELLE Trouver
findByText,[TEXTE]
findByText,[TEXTE],[RANG]
findByText,[TEXTE-EXACT]
findByText,[TEXTE-EXACT],[RANG]
findById,[ID]
findById,[ID],[RANG]
findById,[CLASSE]
findById,[CLASSE],[RANG]
findChildByClassLastElementFound,[CLASSE]
findChildByIndexLastElementFound,[RANG]
3 - Cas d’usage
Cas d’usage 1 : Cliquer sur le deuxième élément avec le même texte
Je veux cliquer sur le deuxième bouton avec le texte “Découvrez”
findByText,Découvrez,2 clickOnLastElementFound
Cas d’usage 2 : Naviguer dans les éléments de la vue pour trouver le bon objet
Ici dans le site SNCF Connect, nous voulons mettre directement du texte dans le champ de saisie pour renseigner le départ.
Comme on peut le voir dans l'image, le champ n'a pas de texte, ni content-desc et le resource-id peut être aléatoire. Le champ a éventuellement une classe mais nous décidons pour l'exemple de naviguer sur la vue pour trouver l'élément intéressant.
# Trouvons le libellé "Départ". findByText,Départ # Aller au premier parent findParentLastElementFound # Aller au second parent findParentLastElementFound # Puis aller au 2ème élément (index 1) du parent pour trouver le champ de saisie de texte findChildByIndexLastElementFound,1 # Renseigner le texte directement setTextLastElementFound,Paris