Lorsque vous essayez d'automatiser notre application, il y a deux boutons avec le même nom. P>
Je ne suis pas capable de trouver un moyen de les reconnaître. S'il vous plaît laissez-moi savoir ce qui pourrait être les moyens d'identifier ces éléments dans Selenium WebDiver en Java P>
3 Réponses :
Vous pouvez utiliser le tableau tout en construisant XPath pour l'élément.
S'il y a deux éléments de deux boutons avec le même nom de classe sur l'interface utilisateur. par exemple.
Donc, si au-dessus de XPATH identifie deux éléments, vous pouvez d'abord localiser avec ( laissez-moi savoir si cela résout votre requête. P> .//* [@ class = 'xyz'] code> p>
.//* [@ class = 'xyz'] code>) [1] et deuxième avec ( ./ / * [@ class = 'xyz'] code>) [2] p>
Utilisez soit le xpath ou le CSS (préféré) pour localiser le bouton requis comme ci-dessous.
Considérons l'échantillon ci-dessous. P>
P>
(//button[@class='same_class'])[2]
Excellents exemples
en supposant que vous avez 2 Tags défini comme suit dans DOM:
<button name="foo">foo</button> <button name="foo">foo</button>
// bouton [@ nom = 'foo' et position () = 1] code> li>
- 2nd bouton:
// bouton [@ nom = 'foo' et position () = 2] code> li> li>
ul> L'avantage de l'utilisation de Position () Code> La fonction est que le navigateur cesse de rechercher des correspondances supplémentaires afin de rechercher tous les boutons et de les filtrer à celui requis, il trouvera le bouton avec le bouton. Compte tenu de position et arrêtez de réduire le temps d'exécution et les besoins en ressources. P> Plus d'informations: Opérateurs XPath & Fonctions p> p>
Avez-vous un contrôle sur le code source de l'application sous test? Sinon, pouvez-vous partager plus d'informations sur les boutons? Spécifiquement le HTML résultant pour chacun?