我一直在学习 Rails 最佳实践并学习为我的 Rails 应用程序编写好的测试。
我目前正在使用 rspec + FactoryGirl 进行测试。
有一段时间我正在编写基本的模型和控制器规范,通常只需要设置几个模型和关联。
现在我有一个具有复杂算法的模型,它基于不同的模型进行大量计算。
为了测试这种方法,我几乎需要我的应用程序的所有模型都存在于测试数据库中,并在它们之间建立所有关联关系。
现在事情变得势不可挡。我需要跟踪所有工厂是否正确地相互引用。我还需要验证是否所有工厂都已正确创建。在我的 before(:each) 方法中还有很多 FactoryGirl.create(:model) 调用。
我有一种感觉,我做的事情不对。解决这种情况的最佳方法是什么?大多数书籍和示例仅涵盖非常基本的案例。
欢迎任何指针的想法和方法。(希望这个问题的范围不要太宽)
例子:
我的应用程序有多个projects
. 每个项目有_manyindexes
和. 每个公司都有_many 。每个频道 has_many跨越不同的. 每个频道也都有 has_many 。companies
mastertags
channels
channel_tag_weights
mastertags
Rawdatas
这可能是所需的最小模型设置的示例。