Используя xpath, мне нужно выбрать текст «level38a», используя динамическую ссылку «выбрать». В коде HTML, который я вижу, содержится 2 <td>
с текстом "level38a"
и "select"
.Selenium webdriver - Как выбрать динамический идентификатор с помощью xpath?
PS: В моем приложении у меня есть более 30 ссылок «выберите» для разного текста. Поэтому использование id="lnk_LEVEL_2449"
неэффективно.
Я использую приведенный ниже код, чтобы выбрать текст, но он не нажимает кнопку выбора.
driver.findElement(By.xpath("//tr[td//a[@value='Select']]/td/a[contains(text(),'level38a')]"));`
HTML фрагмент
<tr>
<td>
<img class="imHeader" alt="" src="include/img/context/level_dash.gif">
<img class="imHeader" alt="" src="include/img/context/icon_telco_level.gif">
level38a
</td>
<td> </td>
<td>
<a id="lnk_LEVEL_2449" href="jfn?isLevel=true&level=L4%3A2449&mfunc=614&cfunc=615&oid=L4%3A2191&ctx=L&jfnRC=9">Select</a>
</td>
</tr>
Это не работает. Получение следующей ошибки: Невозможно найти элемент: {"method": "xpath", "selector": "// tr [td // a [@ value = 'Select']]/td/a [содержит (текст(), 'ShapeCSR')] "} – kkr
Будет ли это потому, что это был« ShapeCSR », а не« level38a »? –
@ Koushic, взгляните на мой отредактированный ответ. – Robert