Devise 的 sign_in 只有在 non-acceptance test 的时候才能用,因为 sign_in 需要用到 request object。在 acceptance test(例如 capybara)的时候 request object 不存在所以无法使用。你可以直接用 Warden 的 login_as