【发布时间】:2019-08-25 11:17:14
【问题描述】:
我有一个使用 Protractor 进行 e2e 测试的 Angular Web 应用程序。我最近添加了 OAuth0 身份验证。我在使用 await browser.waitForAngularEnabled(false) 重定向到非 Angular OAuth0 页面之前禁用了 Angular 同步,并且效果很好。但是,对于该规范文件测试套件的其余部分,我无法再次使用 await browser.waitForAngularEnabled(true) 重新启用 Angular 同步,否则我会收到臭名昭著的量角器超时错误。我想重新启用 Angular 同步,否则我必须使用预期条件、等待和休眠来确保加载后续页面,这可能会导致间歇性错误。
我已阅读所有问题和答案,并尝试了所有显而易见的方法 - 重新加载页面、获取新页面、等待、长时间睡眠等。
所以我的问题非常具体,而不是寻找建议 - 有没有人了解 Protractor 用来与 Angular 页面同步的机制,你知道 Angular 在重定向到和返回后是否有可能重新同步,一个非 Angular 页面,即我是否在浪费时间寻找修复程序。我阅读了一些关于机制的内容 - 它加载了一个要在页面上运行的脚本,但我不确定为什么当我从 auth0 重定向返回后执行 browser.get{'/') 时无法再次加载该脚本.
请注意,我可以禁用 Angular 同步并且可以让事情正常工作,所以我不会就如何让事情正常工作寻求建议。如果您遇到了特定问题并想出了解决方案,我很乐意听到它。
任何帮助表示赞赏。
【问题讨论】:
-
我可以说,这是一个措辞出色的问题!
标签: angular oauth protractor