我尝试在包含Angular和非角度组件的Web应用程序上执行一些Protractor测试。我的代码看起来像这样:describe("Test Name", function() {
it("Test case", function() {
// first execute steps on a non-Angular component
browser.waitForAngularEnabled(false);
// some test steps
// then execute tests on an Angular component, which opens in a new browser tab
browser.waitForAngularEnabled(true);
// some more test steps
});});问题是在运行上述测试后,浏览器启动并立即关闭并出现以下错误:失败:等待Protractor与页面同步时出错:“angularJS可测试性和角度可测试性都未定义。这可能是因为这是一个非角度页面,或者因为您的测试涉及客户端导航,这会干扰Protractor的bootstrapping。有关详细信息,请参阅http://git.io/v4gXM当我browser.waitForAngularEnabled(true);从代码中删除时,非Angular组件的步骤成功执行,然后在新的浏览器选项卡中打开应用程序的Angular组件,10秒内没有任何操作(没有执行任何步骤),浏览器关闭以下错误:失败:等待10007ms后超时
2 回答

一只甜甜圈
TA贡献1836条经验 获得超5个赞
browser.ignoreSynchronization = true;
在与非角度ui交互时使用,因为它使量角器不等待Angular承诺
并browser.ignoreSynchronization = false;
随后browser.waitForAngular();
具有角UI交互时
添加回答
举报
0/150
提交
取消