Ruby on rails 如何为rspec测试创建模块化结构?

Ruby on rails 如何为rspec测试创建模块化结构?,ruby-on-rails,testing,rspec,Ruby On Rails,Testing,Rspec,目前,我有如下代码: it "Doesn't Access the Admin Panel" it "Doesn't see New Project button" it "Doesn't create new news" it "Doesn't access New Project page" it "Sees Projects" it "Sees news" it "Doesn't edit projects" it "Doesn't edit

目前,我有如下代码:

  it "Doesn't Access the Admin Panel"

  it "Doesn't see New Project button"

  it "Doesn't create new news"

  it "Doesn't access New Project page"

  it "Sees Projects"

  it "Sees news"

  it "Doesn't edit projects"

  it "Doesn't edit news"
正如您所看到的,几乎所有的测试都是成对进行的。有什么方法可以让我加入这些测试,比如创建一个方法来接受一个参数,不管它是“新闻”还是“项目”


这不是做事的方式?我希望遵循最佳实践,而不是尝试创建一些新的编码样式。

您可以使用反映上下文的标题在描述块中嵌套示例:

describe "When logged in as an admin" do
  let(:user) { admin_user }  
  it "can view the project" do
    # ...
  end
end

describe "When logged in as a guest" do
  let(:user) { guest_user }  
  it "cannot view the project" do
    # ...
  end
end
有关更多示例,请参见