我一直在写一些selenium脚本,我从下拉列表中选择一些选项。当我将鼠标悬停在父列表上时,它会显示一个孩子列表,我可以从中选择一个选项。这个功能对很多元素都很好,但我有一个导致'ElementNotVisibleException'。
我附上了我一直使用的代码的2个例子。最好的方法是工作,但第二个方法我遇到问题。如果有人可以帮助我为什么会收到这个错误,我将不胜感激。
WORKS
public static void creditNoteReportFocus(InternetExplorerDriver driver)
{
driver.findElement(By.xpath("//a[contains(@href, 'CreditNoteReport')]")).sendKeys(Keys.ENTER);
}
不工作
public static void earlySettlementWorkflowFocus(InternetExplorerDriver driver) throws InterruptedException
{
driver.findElement(By.xpath("//a[contains(@href, 'EarlySettlementMatch?StartUpView=0')]")).sendKeys(Keys.ENTER);
}
SCREENSHOT
HTML代码链接
<div class="inner">
<img alt="barney" runat="server" src="/DibsAndrew/images/chinook/gfx-topnav-left.gif"/>
<ul class="drop-down-menu sub-nav">
<li>
<li>
<li>
<li>
<a class="highlighted" href="/DibsAndrew/CCLReports/Overall">Reports</a>
<ul id="ddm-86476" style="display: block;">
<li>
<li>
<a class="highlighted" href="#">Collections</a>
<span>»</span>
<ul style="display: block;">
<li>
<li>
<li>
<li>
<li>
<li>
<li>
<a class="highlighted" href="/DibsAndrew/ETCalculator/EarlySettlementMatch?StartUpView=0">Early Settlement Workflow</a>
</li>
答案 0 :(得分:1)
我必须使用绝对xpath来解决这个问题。