2011-11-21 88 views
1

我的测试套件包括RSpec2与水豚,警卫和Spork。该测试通过不管我投入:contentwebrat has_selector内容通过任何东西

it 'should something something' do 
    rendered.should have_selector('label', :content => "NOWHEREINMYPAGE") 
end 

我使用这个规格错了吗?我想查看是否存在具有特定内容的<label>标记。哎呀,请注意,所有变量赋值和渲染都位于其他位置的before :each块中。

回答

0

确保你在你的spec文件中有render_views。我刚看到这个。是的,这是正确的,它会在标签内寻找带有NOWHEREINMYPAGE的标签。

+0

虽然我需要这么做吗?它在'specs/views/[model] s/index.html.erb_spec.rb'中。我虽然视图呈现在视图规范中,并且我明确地调用了render方法(作为“before:each”块的一部分)。 – clem

+0

在过去,当我用have_selector检查HTML内容时,我不得不使用render_views。 – lukecampbell

0

已解决。我没有意识到我必须明确地将Webrat放入我的Gemfile中。要求Webrat解决该问题,并且render_views不需要存在于视图测试中。