【问题标题】:Avoiding test synchronization timeouts in Protractor when long polling长轮询时避免量角器中的测试同步超时
【发布时间】:2014-11-16 13:38:49
【问题描述】:

Angularjs 最近引入了 $interval,它是 setInterval 的对应物,以帮助避免 Protractor 在实际轮询时认为页面仍在加载的情况。

但是,此修复对长轮询方案没有帮助,其中连接保持打开 x 毫秒,然后由服务器关闭。是否有任何解决方法,因此 Protractor 将正确执行测试?

【问题讨论】:

    标签: javascript angularjs protractor long-polling


    【解决方案1】:

    为什么不呢?

    $interval(function () {
        MySrvc.pollServer();
    }, 1000 * 60 * 3, 1);
    

    如果您只对做一次感兴趣,请在third argument, count 中说明。然后,您的测试将照常进行,而无需求助于可怕的browser.ignoreSynchronization

    【讨论】:

    • 谢谢,由于某种原因我完全没有看到。
    • 我也有同样的情况,但这似乎对我不起作用。我的pollServer() 触发了一个$resource(...).get() 请求,直到服务器想要发送通知才被满足。 (即从不在测试中。)
    • (我不得不承认,我将延迟设置为 1 毫秒,而不是 3 分钟。但我真的不能在生产代码中将此轮询延迟 3 分钟。)
    猜你喜欢
    • 2015-10-04
    • 2015-01-14
    • 1970-01-01
    • 2018-02-03
    • 2017-10-03
    • 1970-01-01
    • 2011-02-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多