我使用 afterEach 注销,但我的测试尝试在 afterEach 完成注销之前登录。
我试图避免使用睡眠语句(真的减慢了速度)。
如何让测试等待前一个 beforeEach 完成?
代码片段:
afterEach(function() {
AccountBlock.logout().then(function(){
browser.sleep(2000); // I want to get rid of this
});
});
logout() 方法(来自 AccountBlock 对象):
this.logout = function() {
var logoutLink = this.logoutLink;
var userName = this.userName;
return logoutLink.isDisplayed().then(function(isDisplayed){
if (!isDisplayed) {
return userName.click().then (function() {
return logoutLink.click();
}); // open the account menu before logout
} else { // account menu already displayed
return logoutLink.click();
}
});
}
this.userName = element(by.css('a[ng-bind="userName"]'));
this.logoutLink = element(by.css('a[ng-click^="logout"]'));