0
votes

Valider l'élément est sélectionné; Impossible de trouver un élément unique

Je ne trouve pas l'élément unique pour moi de valider si cet élément est sélectionné. Besoin d'aide. Voir Image ci-jointe pour les éléments possibles. xxx

C'est bien meilleur si je peux valider à l'aide de la classe d'éléments avec actif pour vraiment vous assurer que, cet élément est sélectionné car c'est un bon identifiant


2 commentaires

Essayez ceci: // élément-item [contient (@ classe, 'list-item') et contient (@ classe, 'actif')] . Ajouter // A à la fin si nécessaire.


Il ne peut pas détecter cet élément


4 Réponses :


0
votes

Vous pouvez essayer avec le xpath ci-dessous.

//theme-item[contains(@class,'list-item active')]//a


1 commentaires

Il ne peut pas détecter cet élément



0
votes

Au lieu d'utiliser l'identifiant de classe, vous pouvez opter pour LinkeText si votre texte est constant.

driver.findElement(By.cssSelector("theme-item[class = 'list-group-item 
xpath-themes-list-item active']"));


2 commentaires

Bonjour cela fonctionne. Mais je dois obtenir la classe dans laquelle il existe un identifiant "actif" pour vérifier que le thème est sélectionné. Mais cette classe est un onglet différent (voir capture d'écran) Savez-vous comment?


J'ai apporté des changements dans ma réponse après Remarque: . J'espère que cela t'aides.



0
votes
  1. trouver l'élément parent contenant un thème mis en surbrillance XXX

  2. Trouvez un élément enfant I.E. TAG 'A' Parent intérieur XXX

  3. Rechercher le nom du thème XXX


6 commentaires

Il ne peut pas détecter l'élément sélecteur CSS


@MaryMadelynnCruz - Vous signifie by.cssexelector n'est pas disponible ou CSSSelector Le localisateur ne fonctionne pas?


ça ne marche pas. Aucun élément de ce type ne résulte de mon script


Peut-être peut-être être un problème d'attente, pouvez-vous essayer Y mettant votre attente avant FindElement


Yup, il y a du temps que l'élément se trouve mais qu'il prend presque 90 secondes pour cet élément. Y a-t-il un moyen d'optimiser ce cas?


Aucune question DOM relative à la durée de charge, nous ne pouvons pas résoudre, car ils peuvent se produire en raison de la bande passante Internet basse, mais si l'élément se charge entre 30 et 90 secondes, nous pouvons réduire le temps en utilisant des attentes explicites dès que l'élément est chargé dans DOM, sera cliqué.



0
votes
  1. Vous pouvez utiliser xpath contient () < / code> fonction pour correspondre à l'élément de thème qui est actif.
  2. Une fois terminé, vous pouvez utiliser descendant Ax pour trouver son enfant A élément
  3. Il est préférable d'utiliser webDriverwait afin de vous assurer que l'élément est vraiment présent et peut être interagi avec

    mettre tout ensemble: xxx

    aller de l'avant Veuillez éviter de poster HTML DOM comme image, la possibilité de faire une bonne réponse sera beaucoup mieux si vous ajoutez du code à la place.


0 commentaires