如何使用 Selenium 强制执行 onClick 事件?

How to force onClick event with Selenium?

我正在测试具有以下 html 代码的应用程序:

...
<input 
    type="button"
    class="picto modif"
    onclick="hideDiv('divGlobalResult');showDiv('divForm')"
/>

当用户点击这个按钮时,div divGlobalResult 被隐藏,div divForm 被显示。

我想用 Selenium 模拟这个动作。这是我的做法:

focus      css=input.picto.modif
fireEvent  css=input.picto.modif  click

但是,divForm 出现,而​​第二个 div divGlobalResult 留在屏幕上...

我错过了什么?


function hideDiv(idDivElement) {
    $("#" + idDivElement).css("display", "none");
}

function showDiv(idDivElement) {
    $("#" + idDivElement).css("display", "");
}

发生这种情况是因为 Selenium 单击功能无法模拟使用鼠标执行的真实 "Click" 操作。

我也遇到过这个问题,最适合我的解决方案是使用 java 机器人控制鼠标并用它执行点击。

希望对您有所帮助。