测试 controller rspec 中如何直接操作 session?

zfben · December 07, 2012 · Last by blueplanet replied at December 14, 2012 · 3905 hits

在 controller spec 中直接操作session[:user_id]=1是无效的,controller 中打印 session 显示的是 not loaded

有什么办法吗?

@request.session[:user_id]

建议先看一遍 http://guides.rubyonrails.org/testing.html 先从 rails 自带的测试入门,然后在学习其他测试框架!

为什么要先学自带测试才能学其他测试框架? #2 楼 @woaigithub

#4 楼 @congteng 建议,只是建议,个中好处,自己体会吧!

#4 楼 @congteng 他的意思是让你去学习方法,就好比 LZ 的问题里在 Controller 测试当中有哪些对象可以用。这些东西都是相通的,无论你用 testunit 也好还是 rspec 也罢,万变不离其宗。

rspec 里面使用 get或者post方法的时候, get :edit, {id: book.id}, {user_id: user.id} 第三个参数貌似就是放到 session 的数据吧

You need to Sign in before reply, if you don't have an account, please Sign up first.