失败:未知错误:元素在点(x,x)处无法点击 - 角度/量角器

时间:2015-12-24 01:47:50

标签: javascript angularjs selenium automation protractor

我一直在浏览我正在使用的Angular应用程序,使用Protractor为应用程序的所有不同部分测试CRUD功能。所有CRUD页面都有创建/编辑按钮,无论您使用哪个页面,按钮都会打开相同的模式,无论是创建还是编辑。

我不一致地遇到上述问题。我确实会运行测试并且它会给我这个错误而不打开模态,然后我再次运行它,它将打开模态并且相同的精确测试将通过。然后再次尝试确保它再次失败。 ETC

让测试的唯一问题似乎是浏览器/测试套件的问题,而不是实际的代码,这真令人讨厌。为了清楚起见,我在Chrome中对此进行了测试。

处理此类问题的方法是什么,问题是传递和失败的不一致?我不清楚究竟需要修复什么设置。

1 个答案:

答案 0 :(得分:6)

很难说没有看到并运行您的实际测试,但这里有一些尝试:

  • 最大化浏览器窗口:

    browser.driver.manage().window().maximize();
    
  • disable all angular animations

  • 增加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());