【问题标题】:How do I rid my protractor tests of this error: Error while waiting for Protractor to sync with the page: {}如何消除我的量角器测试中的此错误:等待量角器与页面同步时出错:{}
【发布时间】:2016-08-16 17:13:58
【问题描述】:

我有一个与 AudioEye、Twitter 和其他一些第三方应用程序集成的 Angular 应用程序。我们使用延迟加载来加载我们的组件,因此我们的应用程序没有 rootElement 应用程序。我们的登录页面是一个不同的 Angular 应用程序。当我运行我的测试套件时,我一直看到这个错误:

等待 Protractor 与页面同步时出错:{}

每次运行测试时,由于此错误,我都会得到不同的结果,我想知道我可以解决这个问题。任何想法或理论将不胜感激。提前致谢。

堆栈:

黄瓜 9.5
量角器:2.5.1
节点:0.12

【问题讨论】:

    标签: angularjs testing cucumber protractor e2e-testing


    【解决方案1】:

    在您的配置文件中添加- rootElement : 'html'。当您导航到非角度页面时,请使用 browser.ignoreSynchronization=true 并使用量角器命令。

    【讨论】:

      【解决方案2】:

      我认为这些情况仍然可以通过关闭 Protractor-to-Angular 同步来解决。将以下内容放入您的配置中的onPrepare(),或放入您的测试的beforeEach/beforeAll

      browser.ignoreSynchronization = true;
      

      请注意,不幸的是,这将消除使用 Protractor 测试 AngularJS 应用程序的优势之一。现在,测试可能需要通过browser.wait() 进行额外的显式等待。

      后续链接:

      【讨论】:

      • 感谢您提供参考链接,但关闭同步对我们不起作用。我们正在尝试尽可能多地利用量角器等待角度。但是值得注意的是,此问题发生在登录和导航步骤周围。您认为仅在这些区域关闭同步功能会解决问题吗?
      • @GiuseppeDiBella 当然,您可以仅对有问题的部分保持同步。谢谢。
      • 谢谢,这是目前唯一知道的解决方案吗?我关注了您所附的那些文章,并看到了一些关于 NG_DEFER_BOOTSTRAP 的内容!在某人对这篇文章底部的回复中:github.com/angular/protractor/issues/66。但我不确定我是否遵循它的工作原理。
      • @GiuseppeDiBella 很有趣,我没有亲自尝试过,但这听起来像是另一种解决方案。
      • 我正在尝试与我们的一位开发人员一起调查这个问题,看看我们是否可以做类似上述的事情,但还没有做到。
      猜你喜欢
      • 2014-05-16
      • 2019-10-03
      • 2018-12-07
      • 2019-08-16
      • 2019-06-12
      • 1970-01-01
      • 1970-01-01
      • 2016-04-26
      • 1970-01-01
      相关资源
      最近更新 更多