我一直在研究我正在开发的 Angular 应用程序,使用 Protractor 为应用程序的所有不同部分测试 CRUD 功能。所有 CRUD 页面都有创建/编辑按钮,无论您在哪个页面上,这些按钮都会打开相同的模式,无论它们是在创建还是在编辑。
我经常遇到上述问题。我真的会运行测试,它会给我这个错误,但不会打开模态,然后我会再次运行它,它会打开模态,同样的测试也会通过。然后再次尝试确保它再次失败。等
您的测试的唯一问题似乎是浏览器/测试套件的问题,而不是实际代码的问题,这很烦人。需要说明的是,我正在 Chrome 中对此进行测试。
处理此类问题的方式是什么,问题是通过和失败的不一致?我不清楚到底需要修复什么设置。
最佳答案
如果没有看到并运行您的实际测试很难说,但这里有一些事情可以尝试:
最大化浏览器窗口:
browser.driver.manage().window().maximize();
- 增加implicit wait timeout
使用
elementToBeClickable
内置预期条件:var EC = protractor.ExpectedConditions; var elm = element(by.id("myelement")); browser.wait(EC.elementToBeClickable(elm), 5000);
scroll into view单击元素之前的元素:
browser.executeScript("arguments[0].scrollIntoView();", elm.getWebElement());
move to element点击前:
browser.actions().mouseMove(elm).click(elm).perform();
点击通过javascript:
browser.executeScript("arguments[0].click();", elm.getWebElement());
关于javascript - 失败 : unknown error: Element is not clickable at point (x, x) - Angular/Protractor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34446230/