我的测试是使用灯具编写的,我正在慢慢地重构它们以改为使用工厂。
一旦我重构了一个不使用灯具的测试类,我就不想加载那个类的灯具了。有没有办法做到这一点?或者我是坚持要么加载它们还是什么都没有?
对于上下文,以下是我的灯具现在的设置方式:
class ActiveSupport::TestCase
Rake::Task["db:fixtures:load"].execute
...
end
答案 0 :(得分:5)
将灯具放入test/fixtures/users.yml
然后,您可以在需要的地方添加它们,例如在spec_helper
# spec_helper.rb
fixtures :all # include all fixtures
fixtures :users # include only specific fixtures
P.S。它可以与FactoryBot gem(例如FactoryGirl)一起很好地工作
答案 1 :(得分:2)
您应该能够为这样的测试用例选择性地加载夹具:
class ActiveSupport::TestCase
ActiveRecord::FixtureSet.create_fixtures('test/fixtures', %w[units owners guests])
...
end