首先,将“ getPageTimeout”变量添加到您的量角器配置文件中。
如果尚未使用它。这是根据应用程序中的平均页面加载时间设置全局页面超时。
conf.js
getPageTimeout: 120000,//change it based on your app response time
如果仍然不能解决问题,则在检查您要查找的实际元素之前,请验证下一页的页面标题(假设其与上一页不同)。
it('should check when new page is loaded', function () { button.click().then(function (){ browser.getCurrentUrl(); browser.getTitle().then(function (title) { expect(title).toEqual('Next Page Title'); }); return expect(newElement.isDisplayed()).toBeTruthy(); });
即使这不能帮助您使用预期的条件,也要明确等待几个预定义的条件。如果您要等待某个元素出现,请执行以下操作:
var EC = protractor.ExpectedConditions; var e = element(by.id('xyz')); browser.wait(EC.presenceOf(e), 10000); expect(e.isPresent()).toBeTruthy();