【问题标题】:How to double click an element on Selenium Webdriver using JavaScript for Safari如何使用 Safari 的 JavaScript 双击 Selenium Webdriver 上的元素
【发布时间】:2016-01-29 21:27:59
【问题描述】:

我在使用 Java / Webdriver 2.48 双击 Safari 上的元素时遇到问题。

测试在 IE、Chrome 和 Firefox 上运行良好,但在 Safari 上不支持操作。目前我正在做这样的事情

executor.executeScript("arguments[0].dblclick();", element);

executor.executeScript("arguments[0].dblclick;", element);

但不工作。这是错误

arguments[0].dblclick 不是函数。 (在 'arguments[0].dblclick()' 中,'arguments[0].dblclick' 未定义)(警告:服务器未提供任何堆栈跟踪信息) 命令持续时间或超时:35 毫秒 构建信息:版本:'2.48.0',修订:'b7b081a4f1289f17e8ecd38bc67e137c2a12e34a',时间:'2015-10-07 09:50:14' 系统信息:主机:'MacBook-Pro.local',ip:'10.0.1.7',os.name:'Mac OS X',os.arch:'x86_64',os.version:'10.11',java.version :'1.8.0_25' 驱动程序信息:org.openqa.selenium.safari.SafariDriver 功能 [{browserName=safari, takeScreenshot=true, javascriptEnabled=true, version=9.0, cssSelectorsEnabled=true, platform=MAC, secureSsl=true}] 会话 ID:空

我尝试使用 dblclick 和 ondblclick,但没有执行双击,请参阅上一个错误。

【问题讨论】:

标签: javascript java selenium-webdriver safaridriver


【解决方案1】:

我能够使用以下代码解决此问题

它适用于 Safari

var event = new MouseEvent('dblclick', {
'view': window,
'bubbles': true,
'cancelable': true
});

 document.querySelector("div[id='InProcessGrid']>div>table>tbody>tr.rowselected>td:nth-child(1)").dispatchEvent(event);

这里是有关该问题的更多信息

https://github.com/webdriverio/webdriverio/issues/231

【讨论】:

    猜你喜欢
    • 2012-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-07
    • 2013-07-01
    • 2021-09-29
    • 2013-01-12
    相关资源
    最近更新 更多