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

カピバラを使ってフォームをテストします。

https://github.com/jnicklas/capybara

Capybaraは、実際のユーザーがアプリをどのように操作するかをシミュレートすることにより、RailsおよびRackアプリケーションのテストを支援します。テストを実行するドライバーに依存せず、Rack::TestとSeleniumのサポートが組み込まれています。WebKitは外部のgemを介してサポートされます。

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 に答える