0

我想知道是否有人对如何实现可以利用 Rails 中的表单构建器的 Rspec 测试有想法。这是我的助手中的内容:

 def render_radio_buttons(answer, label)
    check_these = []
    field = '<div class="radio">'
      label.split(',').each do |option|
        if check_these.include?(option.strip)
          field += answer.radio_button :body, option.strip, checked = true
        else
          field += answer.radio_button :body, option.strip
        end
        field += label_tag option.strip
      end
    field += '</div>'
  end

此方法从包含多个逗号分隔标签的数据库中提取标签字段。在这种情况下,答案是表单构建器 f。既然它需要表单构建器,我将如何测试这样的东西?

如果您有更好的 rails 方法来实现这一点,我很想知道!感谢任何可以提供帮助的人!

4

1 回答 1

1

我只会使用 Capybara 测试表单。

https://github.com/jnicklas/capybara

Capybara 通过模拟真实用户如何与您的应用程序交互来帮助您测试 Rails 和 Rack 应用程序。它与运行测试的驱动程序无关,并带有内置的 Rack::Test 和 Selenium 支持。通过外部 gem 支持 WebKit。

describe "the signup process", :type => :request do
  before :each do
    User.make(:email => 'user@example.com', :password => 'caplin')
  end

  it "signs me in" do
    within("#session") do
      fill_in 'Login', :with => 'user@example.com'
      fill_in 'Password', :with => 'password'
    end
    click_link 'Sign in'
  end
end
于 2012-03-28T21:58:04.597 回答