Javascript 中断browser.actions().mouseMove在量角器中
我需要使用actions.mouseMove()函数将鼠标悬停在反应式下拉元素上。这样做并单击elemen之后,反应性下拉列表仍然存在,因此我现在需要找到某种方法将鼠标从悬停框中移开。为此,我在单击链接后包含一个返回浏览器。actions().mouseDown().perform()。这是我的全部功能Javascript 中断browser.actions().mouseMove在量角器中,javascript,selenium,protractor,e2e-testing,Javascript,Selenium,Protractor,E2e Testing,我需要使用actions.mouseMove()函数将鼠标悬停在反应式下拉元素上。这样做并单击elemen之后,反应性下拉列表仍然存在,因此我现在需要找到某种方法将鼠标从悬停框中移开。为此,我在单击链接后包含一个返回浏览器。actions().mouseDown().perform()。这是我的全部功能 this.changeCurrentClient = function() { var profile = $('[id="hdr-profile-wrapper"]'); va
this.changeCurrentClient = function() {
var profile = $('[id="hdr-profile-wrapper"]');
var changeClient = element(by.buttonText('Change Client'));
browser.actions().mouseMove(profile).perform();
changeClient.click();
return browser.actions().mouseDown().perform();
};
这很好,但是问题是,当我在网格上运行它时,它有时不能正确地执行moveDown()函数以跳出悬停菜单。我认为这是因为它在网格上运行得稍慢,而DOM的加载时间稍长。有没有更好的方法来打破这种局面,而不是提神醒脑或苦苦等待
在执行mouseDown()之前,我尝试隐式地等待悬停菜单之外的页面上的另一个元素,但是这似乎是第一个操作。perform()几乎将您隔离到悬停菜单,因此无法找到悬停菜单之外的其他元素。刷新真的是做到这一点的唯一方法吗?我看到使用actions()后出现的问题,甚至蔓延到第二个窗口句柄(即browser.switchTo().window(winHandles[1]);)。似乎应该有一种方法来停止该操作,尤其是在以.perform()结尾时