我在我的rails应用程序中运行了一些方法,主要是:
methods_helper.rb
def registered_admin
@admin = FactoryGirl.create(:admin)
visit new_user_session_path
fill_in "user_username", with: @admin.username
fill_in "user_password", with: @admin.password
click_button 'Sign in'
end
factories.rb
factory :admin, class: User do
username "adminuser"
email "admin@example.com"
password "admin246"
admin true
end
和其他种类的水豚事物,如填写课程表格和检查验证/计数等。
但是我注意到运行我的测试,它在实际的用户数据库中创建空间,我有1个主要用户,id:1。我创建了第二个,它的突然ID:34。运行rspec spec /并在沙箱中我创建另一个,身份证:36。
从2到33的所有内容都是零。我的测试中哪些部分会永久影响数据库?我有点认为测试在他们自己的部分运行,并没有“实际”触摸数据库,只是模拟它。我错了吗?我的测试中哪些部分可以更改,因此它不会继续扩展总ID?
(另一个模型以相同的方式运行,它没有相同的问题,只有用户ID是实际创建的条目)
此外,是否有任何命令/方法可以“释放”30个左右的用户。?