1

我在我的 spec 文件夹的 rb 文件中创建了一个方法。我想使用该方法检查我的元素之一是否具有该方法的返回值,因为它是文本。我的问题是,如何将方法name写入 have_selector 文本选项?

我的 rspec 文件

def name
  user = User.first
  return user.name
end

describe "test" do

  it "has the name in the file"
    visit users_path
    page.should have_selector('td', text: name)
    # I need name in the text options to represent the method name created
  end

end

当我运行 rspec 时,它告诉我

NoMethodError: private method 'name' called for nil:NilClass
4

1 回答 1

1

User.first

nil除非您users在测试数据库的表中添加了一行,否则返回。您可以使用工厂、固定装置或只是User.create在前块中手动滚动您自己的。

于 2012-10-27T03:22:13.240 回答