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

A.J*_*A.J 6 jquery selenium selenium-ide selenium-rc fullcalendar

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

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

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

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

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

更新:

作为调试的一部分,我还做了一件事.在测试运行期间,我在浏览器中打开了Selenium IDE,以便记录正在执行的操作.IDE记录了此次单击之前的所有操作.但是当执行click命令时,我在IDE中看不到任何内容.任何想法的人,会是什么原因?

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

art*_*tol 2

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

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

Selenium 点击不适用于 GWT

使用 Selenium“点击”非输入或非控制元素

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

已编辑

我不知道您是否使用相同的日历实现,但我发现 fullcalendar.js jQuery 替换了 mouseover 事件,并且您必须首先触发该事件。我让它工作使用

selenium.runScript("jQuery(\"a:contains('" + NEW_EVENT_NAME
        + "')\").trigger('mouseover');jQuery(\"a:contains('"
        + NEW_EVENT_NAME + "')\").trigger('click')");
Run Code Online (Sandbox Code Playgroud)