我最近开始使用Selenium Webdriver进行自动化。我尝试自动化的网页是CSS。所以我试图实现的是点击下拉菜单" Admin"然后会显示一个列表。并选择其中一个选项" User Access"从该名单中。
现在在页面源代码中,这个特定的下拉列表"管理员"没有ID或名称。以下是供参考的代码:
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
Admin<span class="caret"></span>
</a>
<ul class="dropdown-menu" role="menu">
<li>
<a href="usersAdmin">
Users Admin
</a>
</li>
<li>
<a href="userAccess">
User Access Admin
</a>
</li>
<li>
<a href="#">
Email Object Admin
</a>
</li>
</ul>
</li>
现在我想从下拉列表中选择用户访问管理员值?我试图使用findElement方法来识别该对象,但由于它没有ID或名称,我无法成功完成。这样做的合适方法是什么? 我使用Java进行编码。
答案 0 :(得分:2)
你可以这样做:
<强>爪哇强>
WebElement element = driver.findElement(By.linkText("Users Admin"));
<强> C#强>
var element = driver.FindElement(By.Name("Users Admin"));
<强>的Python 强>
from selenium.webdriver.common.by import By
element = driver.find_element(By.NAME, "Users Admin")
答案 1 :(得分:1)
以下css是否足够?
a[href='userAccess']
答案 2 :(得分:1)
如果您要打开下拉列表并选择“用户管理”选项,请尝试以下操作:
// find the dropdown and open it
driver.findElement(By.linkText("Admin")).click();
// find the interesting element and select it via a click
driver.findElement(By.linkText("Users Admin")).click();