<div id="alis-menu" location="alis-menu" style="">
<div id="menu/menuBar_35" class="v-menubar v-menubar-spml-menubar spml-menubar" tabindex="0" style="width: 794px;">
<span class="v-menubar-menuitem v-menubar-menuitem-selected"> <span class="v-menubar-submenu-indicator">►</span>
<span class="v-menubar-menuitem-caption">Client</span> </span>
这是我的代码,我无法从中选择菜单项。我试过Byid
,ByclassName
仍然没有运气。
我的代码是:
WebElement Menu = ieDriver.findElement(By.className("v-menubar-menuitem v-menubar-menuitem-selected"));
WebElement root = Menu.findElement(By.linkText("Client"));
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
我看到byclassname方法中有两个类名,我建议您删除一个名称,看看结果是否为真。
答案 1 :(得分:0)
您无法选择具有多个类的元素,而不是通过className选择,您应该通过cssSelector选择它并添加由.
分隔的所有类因为我不知道是什么您正在使用的语言我可以假设您的代码可以使用此修改,如果没有,请参阅文档以通过css选择器选择所用的编程语言:
WebElement Menu = ieDriver.findElement(By.cssSelector("v-menubar-menuitem.v-menubar-menuitem-selected"));
对于第二个选择,您应该通过xpath选择包含文本:
WebElement root = Menu.findElement(By.xpath( "//span[@contains(text(),'Client')]"));
而且,我不确定语法,但逻辑还可以。