jquery – Selenium.click无法处理某些锚元素

正在进行的应用程序最近进行了改进,并作为其中一部分引入了新的 JQuery日历.我需要点击日历中的链接来选择时间和日期.但是,Selenium.click无效.该命令被执行,但屏幕上没有任何反应.

要检查我的XPATH / CSS定位器(我试过两者)是否正确,我添加了selenium.getText(locator)和selenium.highlight(locator)命令.两个都工作!没问题.它只有点击不起作用.

在检查firebug后,我可以看到我试图点击的div是一种变灰状态.这是否意味着该元素被禁用?请参阅下面的firebug屏幕截图.

我还尝试在Selenium IDE中运行相同的命令.在IDE中,这有时“有时”.

我正在使用Selenium 1.xx运行此测试.

更新:

I did one more thing as part of
debugging. During the test run,I
opened the Selenium IDE in the browser
so that it records what actions are
happening. IDE recorded all actions
till this click. But I Couldn’t see
anything in the IDE when the click
command was executed. Any idea guys,
what would be cause?

以前有人遇到过类似的问题吗?任何帮助,将不胜感激!!!

解决方法

尝试使用selenium.fireEvent(locater,’click’),或使用与浏览器更紧密集成的Selenium 2.

您可能遇到与其他人相同的问题,例如.

Selenium clicks not working with GWT

Using Selenium to ‘click’ on non-input or non-control elements

它似乎与使用Javascript添加的点击事件有关.

编辑

我不知道你是否使用相同的日历实现,但我发现fullcalendar.js jQuery one替换了mouSEOver事件,你必须首先触发它.我让它使用

selenium.runScript("jQuery(\"a:contains('" + NEW_EVENT_NAME
        + "')\").trigger('mouSEOver');jQuery(\"a:contains('"
        + NEW_EVENT_NAME + "')\").trigger('click')");

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...