Hover with anchor tag is not persisted
当我尝试使用protractor in Chrome通过自动化悬停超链接-(锚标记)时,我观察到悬停并没有持续。我可以看到鼠标悬停事件,但是它立即停止,并且不等到执行下一个动作,因为悬停后,我需要验证工具提示。
由于鼠标悬停不等待下一个操作,因此我无法验证工具提示。我可以单击锚标记,但是遇到悬停问题。
我使用的代码段是
1 2 3 4 5 6 7
| browser.sleep( 5000 );
var ele = element( by.xpath( '//tf-infobox//[normalize-space(.)="Error 1"]/following-sibling:://a' ) );
browser.actions().mouseMove( ele ).perform();
browser.sleep( 5000 ); |
-
节点版本:4.2.2
-
protractor版本:3.1.1
-
Chrome版本:52.0
-
Chrome驱动程序版本:2.21
其他信息:仅对超链接-锚标记可见悬浮问题,而对于其他元素则不可见。
有人可以帮我解决我的问题吗?
谢谢!
- 您可以共享网站吗?
-
protractor2.14?..
-
@alecxe对不起,我使用的protractor版本为3.1.1
-
@KishanPatel很抱歉,我无法共享该网站,因为它是重新启动的网站。
-
browser.actions()。movetoelement(ele).build()。perform();试试看并使用最新的protractor版本。
-
@KishanPatel当我尝试使用您建议的方式时,我收到错误消息,说moveToElement不是一个函数。
-
@KishanPatel我也尝试使用protractor最新版本运行,但仍然出现相同的问题。还有一件事,我观察到,当我的物理鼠标指针位于通过触发运行而通过自动化启动的浏览器窗口上时,悬停功能仍然存在,但是当我的物理鼠标指针不位于通过自动化启动的浏览器上时,一切看起来都很好并没有任何问题。
-
亲爱的,这很简单。我已经使用了很多次。没有网站,我无助。
-
我找到了解决方案。我在诸如browser.driver.executeScript('$('tf-infobox tf-spotlight:contains('Error 1')a')。mouseover();');之类的脚本中使用了jquery命令。下拉菜单和输入也存在一些问题,但是当我在脚本中使用jquery命令时,它们对我有用。所以我想使用最新版本的webdriver会遇到一些问题
我为此找到了解决方案。
我在
之类的脚本中使用了jquery命令
browser.driver.executeScript(\\'$(\\'tf-infobox tf-spotlight:contains(\\'Error 1 \\')a \\')。mouseover(); \\');
下拉菜单和输入也存在一些问题,但是当我在脚本中使用jquery命令时,它们对我有用。因此,我猜测使用最新版本的webdriver会有一些问题
我对工具提示进行了类似的测试,并且我使用browser.wait(tooltip.isPresent(),5000)等到工具提示添加到DOM之后再检查其内容。
- 我已经添加了等待时间和睡眠时间以及仍然没有用。当我监视运行时,我可以看到悬停动作,但是悬停后鼠标指针没有等待它在几秒钟内移动。