我有一个使用Protractor进行e2e测试的Angular Web应用程序。最近添加了OAuth0身份验证。我在重定向到非Angular OAuth0页面之前使用await browser.waitForAngularEnabled(false)禁用了Angular同步,这个操作很好用。然而,我无法在整个spec文件测试套件的其余部分中再次使用await browser.waitForAngularEnabled(true)重新启用Angular同步,否则我会遇到臭名昭著的protractor超时错误。我想重新启用Angular同步,否则我必须使用预期条件、等待和休眠来确保后续页面已加载,这可能导致间歇性错误。
我已经阅读了所有的问题和答案,尝试了所有明显的解决方法-重新加载页面、获取新页面、等待、长时间等待等等。
所以我的问题相当具体,而不是寻求建议-是否有人了解Protractor与Angular页面同步的机制,并且是否知道在重定向到并从非Angular页面返回后Angular是否可以重新同步,即我是否在寻找修复的过程中浪费了时间。我稍微研究了一下这个机制-它加载要在页面上运行的脚本但我不确定为什么在从auth0重定向返回后执行browser.get('/')时不能再次加载该脚本。
请注意,我可以禁用Angular同步并使事情正常工作,所以我不是在寻求有关如何使事情正常工作的建议。如果您遇到过这个特定问题并找到了解决方法,我很想听听您的意见。
感谢任何帮助。
我已经阅读了所有的问题和答案,尝试了所有明显的解决方法-重新加载页面、获取新页面、等待、长时间等待等等。
所以我的问题相当具体,而不是寻求建议-是否有人了解Protractor与Angular页面同步的机制,并且是否知道在重定向到并从非Angular页面返回后Angular是否可以重新同步,即我是否在寻找修复的过程中浪费了时间。我稍微研究了一下这个机制-它加载要在页面上运行的脚本但我不确定为什么在从auth0重定向返回后执行browser.get('/')时不能再次加载该脚本。
请注意,我可以禁用Angular同步并使事情正常工作,所以我不是在寻求有关如何使事情正常工作的建议。如果您遇到过这个特定问题并找到了解决方法,我很想听听您的意见。
感谢任何帮助。