Selenium:在下拉列表中查找元素

时间:2017-06-01 08:24:19

标签: selenium selenium-webdriver indexing drop-down-menu element

我正在尝试点击selenium中的drop-menu元素,但我遇到了一些问题。主要问题是drop-menu中的所有元素都没有id或name,例如我想要找到的那个有这个:

<div>
<span role="menuitem" tabindex="0" style="border: 10px none; box-sizing: border-box; display: block; font-family: Roboto,sans-serif; cursor: pointer; text-decoration: none; margin: 0px; padding: 0px; outline: medium none; font-size: 15px; font-weight: inherit; position: relative; z-index: 1; color: rgba(0, 0, 0, 0.87); line-height: 32px; transition: all 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms; min-height: 32px; white-space: nowrap; background: transparent none repeat scroll 0% 0%;">
<div>
<div style="margin-left: 0px; padding: 0px 24px; position: relative;">
<div>CES (Tij)</div>
</div>
</div>
</span>
</div>

我可以使用:

找到该元素
driver.findElement(By.xpath("//div[2]/span/div/div/div"));

但是据我所知这个选项是使用索引,元素“CES(Tij)”位于索引2中,如果我在下拉列表中添加一个新元素,则元素“CES(Tij)”将不会被选中,有没有其他方法可以在不使用索引选项的情况下找到特定元素?

0 个答案:

没有答案