[英]How can I DRY up my Rspec/Capybara suite?
在我的浴室我有这个在许多it
的块:
let(:user) { create(:user) }
let(:plan) { Plan.first }
let(:subscription) { build(:subscription, user: user ) }
it "something" do
subscription.create_stripe_customer
subscription.update_card valid_card_data
subscription.change_plan_to plan
login_as user
end
我该如何干燥,这样我就不必在许多文件中重复所有这些行?
您也可以创建类似
def prepare_subscription
subscription.create_stripe_customer
subscription.update_card valid_card_data
subscription.change_plan_to plan
end
在您的it块中是这样的:
it "something" do
prepare_subscription
login_as user
end
您无需检查该规格的值,因此它始终为绿色。
如果您需要在测试前准备一些数据,则可以将该代码放入帮助器中,并在需要时在(例如) before
块中调用它。
如果您需要一次又一次地通过检查规范,则可以使用共享示例 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.