0
測試它的行爲作品這應該是很簡單的測試,但由於某些原因,我的測試失敗,請考慮以下模型位:Rspec的失敗,但是當我通過控制器
class User < ActiveRecord::Base
def active!
update_attribute(:active, true)
end
end
控制器:
def activate
user = User.find_by_uuid(params[:id])
user.active!
puts "id #{user.id}"
end
測試:
describe 'activate user' do
let(:user) { FactoryGirl.create(:user) }
before do
sign_in user
visit activate_user_path(id: user.uuid)
puts "id #{user.id}"
end
it 'should be true' do
save_and_open_page
user.active.should be_true
end
end
該測試失敗:
expected: true value
got: false
但是,當我用瀏覽器做到這一點,用戶得到激活沒有問題。我究竟做錯了什麼?這實際上看起來像是一個狡猾的測試,但仍然沒有通過,我花了一個多小時嘗試不同的東西,其中沒有一個工作。
點上,謝謝你,你真棒 –