【发布时间】:2012-09-08 02:25:33
【问题描述】:
我在测试中尝试坚持 DRY 的做事方式。我有两个布局,public 和 application,它们根据用户是否登录显示某些链接和 css。我想知道他们是否是一种方式,或者我如何始终测试我的公共或应用程序链接和内容?他们使用我的views/shared 文件夹中的不同视图。
这是我的公开欢迎页面的测试示例:
spec/requests/pages_spec.rb
describe 'Pages' do
describe 'Welcome Page' do
before { visit root_path }
response.should render_template("layouts/public")
it 'should have public footer present' do
find_link('Home').visible?
find_link('Login').visible?
find_link('Help').visible?
end
end
end
现在公共页脚是公共布局的一部分,我有更多属于这个布局的代码。我的目标是只写一次并将其放入某个方法中,并将其用于我需要的页面/测试。我该怎么做?我不想写看看是否在每个测试中都使用了适当的布局及其内容。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 capybara rspec-rails