【发布时间】:2010-12-27 14:20:56
【问题描述】:
在 Rails 2.3.8 中,我的集成测试(经过大量工作和this post 的帮助)能够跨请求使用单个会话。在 Rails 2.3.10 中,该功能中断,登录后,后续请求没有会话。
一个可能的症状是这段代码过去通过了:
open_session do |s|
s.post 'login', :user=>{:user_name=>username, :password=>pass}
assert_not_nil(s.session[:id])
end
现在它失败了(s.session[:id] 为零)。这可能是也可能不是 问题,因为我可以确认在登录操作期间存储在会话中的其他变量存在。但是在随后的 s.post 中,所有操作都报告说会话中没有任何内容。
有什么建议吗?我看到一个报告说 Rails 2.3.9 引入了一个会话错误,使用this 作为解决方法,但它似乎没有任何区别。
谢谢, 汤姆
【问题讨论】:
-
我遇到了同样的问题。这让我疯狂!!!!我不知道这到底是怎么发生的。
-
您最终找到解决方法了吗?刚刚尝试升级 2.3.5 -> 2.3.14 并遇到了同样的问题..
标签: ruby-on-rails integration-testing session-state