我在模型类别上有一个名为create_main的方法,用于创建主要类别。我是否应该在before(:each)部分中使用此方法,即使必须测试方法本身,或者是否应使用内置功能的rails手动创建主类别。
答案 0 :(得分:2)
应该可以将您的示例分为两个示例组,一个使用create_main调用before(:each)的组,并使用它来测试除create_main之外的所有内容。然后,你有另一个子集,其中before(:each)不调用create_main,在这里你测试create_main。
在您的情况下,我认为您可以尝试以下内容:
describe Category, " without a main category" do
before(:each) do
# No call to create_main here
end
it "should create the main category" do
# Here we test that create_main is working
end
end
describe Category, " with a main category already created" do
before(:each) do
# This time, we do call create_main to set up the object as necessary
end
# More examples go here that depend on create_main
end
试一试。我不是100%肯定它有效,但我过去看过类似的设置。