À l'aide de Xpath pour obtenir le texte de la durée webdriver
Je suis en utilisant selenium webdriver pour obtenir un peu de texte sur ma page web à l'aide de xpath.
C'est le code
<a class="ng-binding" data-toggle="tab" href="#tabCreatedByMe">
Created By Me
<span class="badge ng-binding">3</span>
</a>
J'ai besoin d'obtenir le numéro "3". ce nombre est en train de changer à chaque fois
J'ai fait ce code mais il ne retourne rien
public String getAmountSubtab1() throws InterruptedException{
WebElement s = driver.findElement(By.xpath("//*[@class='badge ng-binding']"));
return s.getText(); }
Suggestions?
- Tu veux dire
s.getText
ne renvoie rien? Si vous le remplacez par un.findElements
, et de vérifier la taille de la collection qui est renvoyée, combien d'éléments a-t-elle? Que faire si vous faites votre XPath plus ciblée?//span[@class='badge ng-binding']
- Lorsque vous dites qu'il ne retourne rien, cela signifie que vous obtenez la valeur null? Ou voyez-vous une NoSuchElementExceptions? Aussi, l'utilisation de Xpath n'est pas conseillé. Je vous suggère d'utiliser les sélecteurs CSS.
- Êtes-vous à l'aide de IE? Pour ce cas, comme Arran a dit, pilote.findElement(...) ne fonctionne pas correctement.
Vous devez vous connecter pour publier un commentaire.
Êtes-vous sûr que vous n'avez qu'un span avec la classe insigne ng de liaison, Il pourrait être que vous pourriez avoir une autre plage avant cela, avec le même nom de classe. Conseillé de ne pas utiliser le nom de classe lors de l'identification d'un élément. Utilisez cette xpath. Devrait fonctionner.