Nightwatch.js:拖放

问题描述 投票:3回答:2

我想测试使用Nightwatch.js 0.8.18一个拖放操作,Selenium服务器2.53.0和Chrome驱动程序2.21.2。

基本上,我需要在https://github.com/RobK/nightwatchjs-drag-n-drop-example/blob/master/spec/drag-and-drop.js描述的方法 - 即:像...

.moveToElement('some-xpath-expression', 10, 10)
.pause(100)
.mouseButtonDown(0)
.pause(100)
.moveToElement('other-xpath-expression', 30, 30)
.pause(100)
.mouseButtonUp(0)

光标移动到该元件被拖动(由图标鼠标悬停的:hover风格感知),但随后没有任何反应。在我看来像mouseButtonDown()动作有没有影响。 (但谁知道肯定?)

这没有什么区别,如果我使用Firefox,而不是浏览器 - 的行为是完全一样的。

有任何想法吗?

selenium drag-and-drop nightwatch.js
2个回答
2
投票

专家你也来试试这一点,它在Chrome,Firefox和IE浏览器工作正常。

只是你必须安装“HTML-DND”使用NPM,以及这是链接:https://www.npmjs.com/package/html-dnd

安装完成后,你只需要执行此命令

browser.execute(dragAndDrop, ['#draggable', '#droppable']);

例如:

var dragAndDrop = require('html-dnd').codeForSelectors;
browser.execute(dragAndDrop,['#elemendId1','#elemendId2']).pause(2000);

希望这将正常工作的测试用例。


1
投票

那一刻你点击什么他们应该表达的变化,因此测试“忘记”被点击的元素。

我们推荐使用操作方法构建像这样:

http://elementalselenium.com/tips/39-drag-and-drop

© www.soinside.com 2019 - 2024. All rights reserved.