我在 mongoid.yml 文件中使用 mongoid 作为我的数据库来运行 rails。
问题是每次我运行 rspec 它都会尝试连接到 mongodb 后端。
我想停止这种行为并在我的测试中使用模拟。
我怎样才能做到这一点?
我在 mongoid.yml 文件中使用 mongoid 作为我的数据库来运行 rails。
问题是每次我运行 rspec 它都会尝试连接到 mongodb 后端。
我想停止这种行为并在我的测试中使用模拟。
我怎样才能做到这一点?
对于 rspec 中的单元测试,如果您对模型对象进行 Mongoid 持久性调用,则需要将这些持久性调用替换为对模拟/存根库的调用。例如,factory-girl提供模型对象的模拟实现,然后您可以通过调用非持久性方法在单元测试中使用它...
person = FactoryGirl.build(:person)
person.should be_a_kind_of Person
避免调用持久化到测试数据库的方法,例如“FactorGirl.create”