2
我正在用黃瓜/水豚進行一些測試。我有一種情況,用戶轉到主頁,填寫他/她的用戶名和密碼,然後單擊「Enter」。這應該登錄用戶。當使用默認的Capybara驅動程序rack_test時,這將起作用:用戶登錄並移動到其他頁面。使用Selenium驅動程序時,這根本不起作用。用戶提交他/她的用戶名和密碼,但沒有登錄。水豚司機Selenium沒有認證用戶,而機架測試做得很好
我說的是同樣的測試。唯一改變的是水豚司機。我也認爲知道我使用Authlogic作爲我的認證邏輯很重要。
你能幫我嗎?謝謝!
這是我的水豚配置文件(support/env.rb
):
require 'cucumber/rails'
require 'capybara/session'
require 'capybara/dsl'
Capybara.default_selector = :css
Capybara.run_server = false
ActionController::Base.allow_rescue = false
Capybara.javascript_driver = :selenium
Capybara.server_port = 3000
Before('@no-txn,@selenium,@culerity,@celerity,@javascript') do
Cucumber::Rails::World.use_transactional_fixtures = false
Capybara.reset_sessions!
DatabaseCleaner.strategy = :truncation, {:except => %w[widgets]}
DatabaseCleaner.start
activate_authlogic
Authlogic::Session::Base.controller = Authlogic::ControllerAdapters::RailsAdapter.new(self)
end
After('@no-txn,@selenium,@culerity,@celerity,@javascript') do
DatabaseCleaner.clean
end
Before('[email protected]', '[email protected]', '[email protected]', '[email protected]', '[email protected]') do
DatabaseCleaner.strategy = :transaction
end