sélénium get élément li fonction de la position d'index, puis cliquez sur la case à cocher

apprenant:

J'ai ce code HTML maintenant à l'aide de fourmis Sélénium I basculer l'élément li avec la position index donné par exemple 1, où il indique que je veux cliquer sur la case à bascule pour le printemps.

<ul id="todo-list" data-woven="abc">
<li class="active" data-index="0">
    <div class="view">
        <input class="toggle" type="checkbox">
        <label>Java</label>
        <button class="destroy"></button>
    </div>
    <input class="edit">
</li>
<li class="active" data-index="1">
    <div class="view">
        <input class="toggle" type="checkbox">
        <label>Spring</label>
        <button class="destroy"></button>
    </div>
    <input class="edit">
</li></ul>

Je suis tout à fait nouveau pour le sélénium afin de ne pas en mesure de comprendre comment pouvons-nous y parvenir.

Je sais que pour obtenir les ULéléments en utilisant le code suivant:

driver.findElement(By.id("todo-list"));

Maintenant , comment peut obtenir l' liélément en fonction de son indexet clickcorrespondant checkbox.

DebanjanB:

Cliquer sur la case à cocher élément par rapport à l'ancêtre des <li>noeuds indice attribut que vous pouvez utiliser des éléments suivants Locator Stratégies :

  • cssSelector :

    driver.findElement(By.cssSelector("ul#todo-list li.active[data-index='1'] input")).click();
    
  • XPath :

    driver.findElement(By.xpath("//ul[@id='todo-list']//li[@class='active' and @data-index='1']//input")).click();
    

Je suppose que tu aimes

Origine http://10.200.1.11:23101/article/api/json?id=478628&siteId=1
conseillé
Classement