欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在view spec中用Capybara.string的结果替代rendered(Capybara版本0.4.12) 博客分类: Ruby 测试rspeccapybara 

程序员文章站 2024-02-12 14:35:16
...
问题关键字:undefined method `has_selector?' for #<String:0x1034ecfb0>

版本:
Capybara(0.4.12)
RSpec-Rails(2.5.0)

补充:刚试了一下最新版本的RSpec-Rails2.6.0.rc6和Capybara1.0.0.beta1,已经把这个问题给解决了……


google一番后:
https://github.com/rspec/rspec-rails/issues/213
https://github.com/jnicklas/capybara/issues/139
https://github.com/rspec/rspec-rails/issues/302

最后:

在spec_helper.rb中加入如下代码:


if defined?(Capybara) && !defined?(Webrat)
  module ActionView::TestCase::Behavior
    alias old_rendered rendered

    def rendered
      Capybara.string old_rendered
    end
  end
end