le sélénium trouver de l'enfant-éléments
J'ai suivantes html comme:
<form name="form1">
<input name="a" ...>
<input name="b" ...>
...
<div><span><select name="c">...</select></span></div>
</form>
Je voudrais trouver tous les éléments à l'intérieur de l'élément de formulaire. J'ai d'abord utiliser findElement()
pour obtenir l'élément de formulaire form1
, puis utilisez form1.findElements(By.xpath(".//*[@name]"))
pour obtenir tous ses enfants ayant l'attribut name
. Cependant, pour la select
élément, puisqu'il est le grand-grand enfant de form1
, comment puis-je obtenir ainsi?
Est-il un moyen de trouver tous les éléments contenant un attribut name
(pas seulement des éléments d'enfant, mais aussi de l'enfant de l'enfant...) dans les form1
?
Merci!
- Ce que vous avez déjà devrait marcher, car il n'est pas juste de trouver les enfants, mais tous les descendants imbriquée à n'importe quel niveau.
- Mais quand je le lance, je ne reçois que les enfants des éléments, pas tous descendants.@BoltClock'saUnicorn
- Merci@BoltClock'saUnicorn Oui, vous avez raison. J'ai fait une erreur, car dans la page de google, je pense qu'ils utilisent
<input type="select">
pour exprimer l'élément select, alors que le code source affiché comme<select>
. Qui me fait pensé que cela n'a pas tous les descendants.
Vous devez vous connecter pour publier un commentaire.
si vous voulez obtenir un WebElement par xpath, et ainsi obtenir un enfant de lui... vous pouvez utiliser
webElement.findElement(By.xpath("./*"))
... ce "." avant le "/" fait de la magie, vous aurez besoin pour obtenir seulement les enfants de la webElement...Avez-vous à trouver l'élément de formulaire? Si pas, alors vous pouvez le faire dans une instruction select à l'aide de css ou xpath.
Le css serait " la forme[name="form1"] [nom]'
Notez l'espace entre la fermeture et l'ouverture des crochets.
Vous utilisez ce sélecteur avec FindElement sur le pilote de l'objet plutôt que de trouver la forme première.
Vous devriez être en mesure d'utiliser le descendant:: comme décrit dans ce post.
http://hedleyproctor.com/2011/05/tutorial-writing-xpath-selectors-for-selenium-tests/
Voici quelques exemples de l'article: