我正在为网络应用进行e2e测试,我想登录用户并坚持他们的会话。
特别是以下情况:
我们正在使用基于HTTP标头的身份验证,我不知道如何配置此方案以进行测试。
是否像在某处激活cookie一样简单?或者可能通过配置支持auth标头?
答案 0 :(得分:0)
我设法解决了这个问题,只需在调用browser.sleep(1000)
之前添加browser.get( /* the current url */ )
。
基本上,Protractor正在锤击路由器以加快速度,我的应用程序在auth creds设置之前就把我踢了出来。或者,也许,HTML5路由可能需要一些时间来处理(我们的深层链接被散列,但然后角度将哈希转换为HTML5路由)。
答案 1 :(得分:0)
您也可以使用browser.waitForAngular();
。
答案 2 :(得分:0)
你可以使用这样的承诺
goAfterLogin: function(){
browser.get('http://www.example.com').then(function(){
return this; //or other return
}).then(function(){
return this;
});
}
由您决定如何使用它(您也可以使用waitForAngular()创建promis)