Я новичок в Selenium, и я пытаюсь создать локатор для элемента из неупорядоченного списка, мне нужно сгенерировать xpath для следующего:
<ul ="myData" id="myData">
<li class="bodyText">
<span class="msgText">Selection1</span>
</li>
<li class="bodyText">
<span class="msgText">Selection3</span>
</li>
</ul>
Чтобы получить элемент <li>
:
By.xpath("//ul[@id='myData']/li[1]")
где 1 - индекс li
который вы хотите.
Если вам не нужно выбирать элемент li по его тексту, и вы в порядке с выбором на основе индекса, я бы рекомендовал вам использовать селектор CSS вместо xpath. Например:
int i = 1;
By locator = By.cssSelector("#myData li:nth-child(" + i + ")");
Дальнейшие чтения:
ul
вместоdiv
? Но нет, вам не нужно делать это, если вы не хотите фильтровать по классу.