我正在将Rspec
与Factorybot
一起使用,我想创建一些特定的数据(然后将其删除)每次之前,都要启动Rails test
环境
例如,我的所有模型都依赖于Manufacturer
,而我想在启动测试环境时已经创建了Manufacturer
,并使我所有的工厂都与此特定的Manufacturer
相关联对象(重要的是所有工厂的对象都是同一对象,导致模型对其进行验证)?
它可以将其放入initializers
中:
if Rails.env.test? { create factories }
,但这似乎不是一个好主意。
什么是最好/最干净的方法?
答案 0 :(得分:0)
在rails_helper.rb或spec_helper.rb的before(:each)
块内添加一个RSpec.configure
块:
RSpec.configure do |config|
config.before :each do
# create factories here
end
end
然后将在每个示例之前运行此块。