gpt4 book ai didi

selenium webdriver : org. openqa.selenium.ElementNotVisibleException:元素当前不可见,因此可能无法与之交互

转载 作者:行者123 更新时间:2023-12-04 06:06:24 24 4
gpt4 key购买 nike

我正在尝试使用文本克隆概念单击跨度。以下是html

<ul class="context-menu-list context-menu-root" style="width: 210px; top: 500px; left: 231px; z-index: 2;">
<li class="context-menu-item">
<li class="context-menu-item">
<li class="context-menu-item disabled">
<li class="context-menu-item">
<li class="context-menu-item icon icon-evn-icon-clone-concept">
<span>Clone concept</span>
</li>
<li class="context-menu-item">
<li class="context-menu-item icon icon-delete disabled">
</ul>

我使用的 javascript 代码是:
driver.findElement(By.xpath("//span[text()='Clone concept']")).click();

我通过火路径验证了这是元素的正确性。

我还确保根据链接 How to force Selenium WebDriver to click on element which is not currently visible? 该元素可见

这是 计算 css
font-family Verdana,?Arial,?Helvetica,?sans-serif
.context-menu-list Verdana,?Arial,?Helvetica,?sans-serif
jquery...enu.css (line 15)
body Arial,?Helvetica,?sans-serif
swa.css (line 3)
font-size 11px
.context-menu-list 11px
jquery...enu.css (line 15)
list-style-type none
.context-menu-list none
jquery...enu.css (line 15)

还尝试了以下代码:
WebElement foo = driver.findElement(By.xpath("//span[text()='Clone concept']"));
Actions bar = new Actions(driver);
bar.click(foo).perform();

异常(exception):
org.openqa.selenium.ElementNotVisibleException:元素当前不可见,因此可能无法与之交互
命令持续时间或超时:30.04 秒
构建信息:版本:'2.24.1',修订版:'17205',时间:'2012-06-19 16:53:24'
系统信息:os.name:'Windows 7',os.arch:'amd64',os.version:'6.1',java.version:'1.7.0'
驱动程序信息:driver.version:RemoteWebDriver

任何帮助将不胜感激。

对于那些被困在这里的人来说,另一个黑客:
目前,我已经能够通过将这个庞大的测试用例拆分为更简单的测试用例来继续前进。

最佳答案

不幸的是,Webdriver 似乎不太擅长处理您的问题中描述的情况。不过你有几个选择。使用 Javascript 模拟点击:

JavascriptLibrary jsLib = new JavascriptLibrary(); 
jsLib.callEmbeddedSelenium(selenium,"triggerMouseEventAt", elementToClick,"click", "0,0");

或者
((JavascriptExecutor) driver).executeScript("arguments[0].click();", elementToClick);

或者您可以尝试使用操作来单击菜单链中的所有元素。不幸的是,我发现这是不可靠的。

我有一个脚本,它检测一个元素是否在菜单链中,如果它按要求的顺序点击它们,最终点击用户想要的那个,如果你想要的话,我可以把它张贴在某个地方,但它不漂亮或短的。

关于selenium webdriver : org. openqa.selenium.ElementNotVisibleException:元素当前不可见,因此可能无法与之交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12082946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com