【问题标题】:webrat have_selector content passes anythingwebrat have_selector 内容传递任何东西
【发布时间】:2011-11-22 04:59:44
【问题描述】:

我的测试套件包括带有 Capybara、Guard 和 Spork 的 RSpec2。无论我在:content 中输入什么,这个测试都通过了:

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

我使用这个规范有错吗?我想看看是否有带有特定内容的<label> 标签。糟糕,请注意所有变量分配和渲染都在其他地方的 before :each 块中。

【问题讨论】:

    标签: ruby-on-rails rspec2 capybara webrat


    【解决方案1】:

    确保您的规范文件中有 render_views。我刚看到这个。是的,这是正确的,它会在标签内查找带有 NOWHEREINMYPAGE 的标签。

    【讨论】:

    • 我需要这样做吗?它位于specs/views/[model]s/index.html.erb_spec.rb。虽然视图是在视图规范中呈现的,但我明确地调用了render 方法(作为before :each 块的一部分)。
    • 过去,每当我使用 have_selector 检查 HTML 内容时,我都必须使用 render_views。
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-25
      相关资源
      最近更新 更多