我使用 Rspec 和 Capybara 来写集成测试。 我注意到, 在测试主动记录选项的创建时, 我经常要执行相同的代码 。
例如:
it "should create a new instance" do
# I create an instance here
end
it "should do something based on a new instance" do
# I create an instance here
# I click into the record and add a sub record, or something else
end
问题似乎是,主动记录对象在测试中并不存在,然而,Capybara默认会保持相同的分期(怪异)状态。
我可以模仿这些记录, 但是因为这是一个整合测试, 有些记录相当复杂(它们有图像附加物和什么的), 使用Capybara 填写用户信息表简单得多。
我试图定义一个功能 来创造新的记录, 但出于某种原因,这感觉并不正确。什么是最佳的做法?