我当前的单元测试(量角器+ angularJS项目)失败,错误为UnknownError: unknown error: Element is not clickable at point (525, 1103)
。我使用调试器在失败之前停止它,并且我认为它会失败的唯一原因是因为按钮不在视口中(你必须向下滚动)。
失败的行是
homeLink = ptor.findElement(protractor.By.linkText('Home'));
homeLink.click();
expect(ptor.getCurrentUrl()).toBe(homeUrl);
来自https://github.com/angular/protractor/issues/319,他说'...当我使用findElement()时,它会将它们滚动到页面“的”顶部“。评论同意。
在我的测试homeLink = ptor.findElement(protractor.By.linkText('Home'));
中没有导致页面滚动。
我认为它应该错了吗?
我该怎么办?
答案 0 :(得分:9)
首先需要向下滚动(或最大化浏览器,如果这样可以让您看到要点击的按钮),以便按钮在页面上可见:
var scrollIntoView = function () {
arguments[0].scrollIntoView();
}
browser.executeScript(scrollIntoView, yourwebelement);
答案 1 :(得分:2)
不要忘记获取webElement browser.driver.executeScript(“arguments [0] .scrollIntoView(true);”,ed.getWebElement());