我正在不同浏览器上测试最新版本的Protractor。在此测试规范中,我想右键单击svg元素以触发svg中给定点上的特定事件。要点击此元素,我将使用此功能
function rightClick(svgElement) {
scrollToElement(svgElement).then(function () {
browser.actions()
.mouseMove(svgElement)
.click(protractor.Button.RIGHT)
.perform();
});
}
我在不同浏览器的不同selenium hub上运行测试。测试通过所有浏览器(chrome,firefox27,ie11 + 10)除了firefox34。当我观察测试时,我可以识别鼠标悬停svg元素(因为元素突出显示),但是在右键单击后,它会打开firefox上下文菜单,而不是调用eventlistener。
另一个重要的一点是,测试失败了。
我尝试了不同的解决方法,例如使用两个不同的 browser.actions()执行右键单击(第一个用于移动元素,第二个用于执行右键单击)。
我也尝试点击元素坐标......但没有任何效果
为了防止分辨率导致的错误,我最大化窗口并滚动到偏移量为75px的元素,以防止浏览器弹出破坏测试。