Angularjs 处理progrator.js';异步性

Angularjs 处理progrator.js';异步性,angularjs,asynchronous,protractor,Angularjs,Asynchronous,Protractor,我正在努力处理量角器的异步特性 在不同的连接或浏览器上,似乎有时会找到元素,有时不会,这取决于我的连接速度 除了使用.then()回调之外,在量角器中有哪些选项可用于处理异步问题,以确保在执行下一个操作之前元素已完全加载 谢谢 我有很多这样的问题。。为了解决这个问题,如果元素依赖于要显示的异步调用,我总是先放置一个浏览器等待 browser.wait(protractor.ExpectedConditions.elementToBeClickable(element(by.id('element

我正在努力处理量角器的异步特性

在不同的连接或浏览器上,似乎有时会找到元素,有时不会,这取决于我的连接速度

除了使用.then()回调之外,在量角器中有哪些选项可用于处理异步问题,以确保在执行下一个操作之前元素已完全加载


谢谢

我有很多这样的问题。。为了解决这个问题,如果元素依赖于要显示的异步调用,我总是先放置一个浏览器等待

browser.wait(protractor.ExpectedConditions.elementToBeClickable(element(by.id('elementId'))), 3000);
element(by.id('elementId').click()
根据您的测试结果,您似乎正在测试一个非角度的应用程序。因此,您需要使用
忽略同步


因此,您需要自己处理async及其所有的怪癖。例如,使用
then()
回调和
ExpectedConditions

这是一个正在测试的AngularJS应用程序,而你没有更改
ignoreSynchronization
值吗?我确实添加了browser.ignoreSynchronization=true,因为它已经存在了,这不正确吗/是不是把我搞砸了?我没有仔细研究过,你不应该在没有明确需要的情况下调整
ignoreSynchronization
。尝试不更改它并运行测试。你有什么问题吗?现在我在取出它后遇到了以下问题:失败:等待量角器与页面同步时出错:“在窗口上找不到angular”一个简单的建议-如果你没有angular.js应用程序,不要使用量角器。如果您有angular.js应用程序,请不要触摸
ignoreSynchronization
,并将其保持在
false
状态。