2013-09-05 34 views
1

我正在使用黄瓜来执行自动化测试。我在运行期间运行两个功能,在该功能中输入我的凭据以在网站中执行操作。当执行第二个功能时,我将不得不重新输入相同的凭证,但浏览器之前已经存储了我的凭证,这使得脚本在此步骤中实际跳过/失败。我在下面分享了我的脚本。请咨询可以解决的问题。黄瓜 - 删除缓存和饼干

我试着删除cookies,但问题仍然存在。

When /^I clear cookies$/ do 
    browser = Capybara.current_session.driver.browser 
    browser.manage.delete_all_cookies 
end 

回答

0

开始一个新的浏览器会话保证了一个干净的环境。但是,根据您的设置和测试套件,它会减慢测试速度,但您可能需要尝试。

如果您使用HTTP基本身份验证登录,删除cookie不会丢失凭证。如果是这种情况,除了重新启动浏览器之外,没有其他通用的方法。

1

在这种情况下,您需要重置您的会话,这将允许您重新登录而无需任何问题!

在你的代码:

When /^I clear cookies$/ do 
    Capybara.reset_sessions! 
end 

接受我的答案,如果你的作品!

+0

“reset_session”和“reset_sessions”有什么区别? – zochhuana