TestUnit Capybara.reset_sessions!每次测试

时间:2014-05-15 22:39:49

标签: ruby-on-rails-4 capybara testunit capybara-webkit

所以下面的代码是孤立的,但是如果我运行完整的测试套件,如果我删除它就会中断:

Capybara.reset_sessions!

从我的调查中,用户无法登录,因为他们已经登录。所以我的问题是,在运行新的会话测试之前,是否需要调用它?如果是这样,我可以把它放在一个常见的地方,所以我不需要在每个测试的设置方法中都有它吗?

require 'test_helper'

class SignInTest < ActionDispatch::IntegrationTest
  def setup
    Capybara.reset_sessions!
  end

  test 'user can sign in' do

  end
end

1 个答案:

答案 0 :(得分:0)

将此添加到:

test_helper.rb 

class ActionDispatch::IntegrationTest
  include Capybara::DSL
  Capybara.default_driver = :webkit

  def teardown
    Capybara.reset_sessions!
  end
end