我一直在写一些selenium脚本,从下拉列表中选择一些选项。当我将鼠标悬停在父列表上时,它会显示一个子列表,我可以从中选择一个选项。这个功能在很多元素中都运行良好,但我有一个功能导致了“ElementNotVisibleException”。
我已经附上了我一直在使用的代码的两个例子。上面的方法是有效的,但第二种方法我遇到了问题。如果有人能帮我解释为什么我会犯这个错误,我将不胜感激。
作品
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);
}
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>
为了解决这个问题,我不得不使用绝对xpath。
我正在尝试为以下内容定位元素: 我尝试了XPath和CssSelector,但它无法定位元素。有人能帮我找到元素TIA吗
我想在selenium中找到我的文本字段,但我不知道如何找到(我第一次使用sellenium)。 我试过: 或者通过xPath和cssSseltor String在dev工具中由chrome生成。 请帮助我,我将感谢解释。 这是html:
我刚开始学习Selenium,需要使用云中的jenkins机器验证登录网页,该机器没有GUI。我成功地在有UI的系统上运行了脚本。然而,当我将脚本修改为运行headless时,它无法表示无法定位元素。我的脚本如下: 当不使用chrome_options时,python脚本在我的系统上运行良好。但是在将它们添加到无头模式下运行时,它会失败,输出如下: 由于我对Selenium有大约一天的学习时间,我
我试着在网页上找到重构元素(时间-分钟)。我的代码只适用于前面的简单文本。现在我使用Ctrl Shift I并指出我的元素和“复制Xpath”。 此外,我还有一个Chrome扩展名“XPath helper”,并试图用它来实现这一点。XPath比我下面的代码要长。而且它也不起作用。 错误:NoSuchElementException:消息:没有这样的元素:无法定位元素:{“方法”:“xpath”,
在这种情况下使用any()的正确方式是什么?或者更好的是,需要做什么才能使这种方法发挥作用? 假设Selenium.get('url')在调用此方法之前已经执行。