【问题标题】:Protractor adds a huge delay after downloading a file while test is running量角器在测试运行时下载文件后增加了巨大的延迟
【发布时间】:2015-05-28 22:48:20
【问题描述】:

我正在使用 Protractor,我正在尝试自动化将文件从我的应用程序下载到本地系统的过程。 Chrome 已配置为无需任何提示对话框即可下载文件。下载按钮的操作是一个简单的点击: element(by.css("#myDownloadLink")).click(); 这按预期工作。但是,量角器会在此操作之后添加不必要的延迟。下载需要一秒钟,下载请求会在 1-2 秒内解决。但是,Protractor 会在这行代码上挂起大约一分钟,然后再继续下一行 - 我猜它是在不必要地同步。

是否有人对如何解决或至少解决该问题有任何想法?比如可能以不同的方式触发下载(但仍然通过 UI?)并避免量角器同步/挂起

谢谢

【问题讨论】:

  • 您好,这是否得到了有效的修复?除了在整个特定规范中禁用 waitforangular

标签: file download delay protractor


【解决方案1】:

我会尝试使用ignoreSynchronization 标志:

browser.ignoreSynchronization = true
// trigger download
browser.ignoreSynchronization = false

【讨论】:

    【解决方案2】:

    我试过了,但是没有用。一旦您重新打开 ignoreSynchronization - 它会继续等待。这是解决方案:

    您必须强制 Angular 立即执行操作: var fixSyncScript = 'var el = document.querySelector("body"); angular.element(el).injector().get("$browser").$$completeOutstandingRequest(angular.noop);返回真;'; browser.executeScript(fixSyncScript).then(function (result) { 期望(结果).toBe(真); });

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-21
      • 2019-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多