点击量角器中元素的给定坐标
Clicking on given coordinates of element in protractor
我想点击canvas
元素的特定位置,所以我编写了以下Protractor代码:
var canvas = element(by.id("canvas"));
var clickCanvas = function(toRight, toBottom) {
browser.actions()
.mouseMove(canvas, -toRight, -toBottom)
.click();
}
toRight
/toBottom
是应该单击的像素数,相对于画布的左上角。
但是,单击似乎不会在给定的坐标下执行。我从软件质量保证&测试堆栈交换。
你能确认这个片段有效吗
你能提出替代方案吗?
我完成了这项工作,传递了一个表示坐标的对象作为mouseMove
:的第二个参数
var canvas = element(by.id("canvas"));
var clickCanvas = function (toRight, toBottom) {
browser.actions()
.mouseMove(canvas, {x: toRight, y: toBottom})
.click()
.perform();
};
您错过了.perform()
browser.actions().mouseMove(canvas, -toRight, -toBottom).click().perform();
我在测试中使用了几次,并确认它能正常工作
在这种情况下,您错过了perform()
调用:
browser.actions()
.mouseMove(canvas, -toRight, -toBottom)
.click(); // < no .perform() HERE
这是在Protractor/WebDriverJS中编写e2e测试时常见的错误之一。
为了防止这些错误发生,ESLint
有一个eslint-plugin-protractor
插件,如果browser.actions()
链上没有调用perform()
,它会发出警告。
相关文章:
- 当带有渲染器的DOM元素不在屏幕顶部时,移动了场景的坐标
- 在自定义坐标处获取RaphaelJS元素的颜色填充
- 将html元素定位在页面中的任何x/y坐标处
- 点击量角器中元素的给定坐标
- 如何在相对定位的元素内获取鼠标的坐标
- 如何获取画布中图像元素的坐标
- 在视频元素上获取准确的鼠标坐标
- JavascriptjQuery:是否可以使用 x 和 y 坐标覆盖元素
- 根据 c3 条形图中的坐标对齐外部元素
- 如何计算坐标以将元素保留在用户屏幕的区域中
- 动态设置滚动坐标并从这些坐标以200px滚动容差更改DOM元素
- 如何在保留鼠标/元素坐标访问权限的同时将鼠标移动更改为 setInterval
- 我在 JS 中做错了什么?我需要每个元素的一个坐标,但不是全部
- 在 CSS3D 元素上查找屏幕坐标的局部坐标
- 通过坐标获取子元素
- 高效获取元素的可见区域坐标
- 在Rapha中找到给定元素的坐标235;l JS生成的图像
- 每隔几毫秒在给定的x-y坐标上显示元素
- 获取“img”元素的XY坐标
- 在具有用户坐标的元素内创建SVGPoint