我正试图用Nightwatch测试我的GUI。我似乎无法找到如何模拟右键单击。我浏览了API参考页面(http://nightwatchjs.org/api),并在各处搜索。我在这里错过了什么吗?因为我认为右键点击应该是最基本的功能之一。
答案 0 :(得分:5)
好消息!!!
由于Nightwatch.js v0.6.13 ,您可以点击真正的右击: - )
"Right Click to Show ContextMenu" : function (browser) {
browser
.moveToElement('#targetElement')
.mouseButtonClick('right')
.pause(5000)
.end();
}
答案 1 :(得分:1)
编辑: DOESN' TWORK 。无论如何我会留在这里。它可能会有所帮助。
我找到了一个解决方法。 mousebuttonDown()方法允许使用左键,中键和右键。它们分别被分配为0,1和2。所以下面以某种方式模拟了一个右键点击:
"Right Click to Show ContextMenu" : function (browser) {
browser
.moveToElement(/*locate your element here*/)
.mouseButtonDown(2)
.mouseButtonUp(2)
.end();
}
答案 2 :(得分:1)
我对selenium-webdriver有同样的问题......
但是现在我正在使用Nightwatch.js的解决方法:
"Right Click to Show ContextMenu" : function (browser) {
// inject script in client
browser.execute(function(selector){
// dispatch "context menu" event
$(selector).trigger('contextmenu');
return true;
}, ['#menu'])
.pause(5000)
.end();
}
(参见Nightwatch API)
或者纯粹的JS:
document.querySelector('。logo')。dispatchEvent(new CustomEvent('contextmenu'));
并查看目标网页:
$('#menu').on('contextmenu', function () {
alert('context menu');
//return false; // cancel default menu
});