私のレールアプリケーションには、多くのヘルパーメソッドが定義されたモジュール(クラスではない)であるコントローラーヘルパーが存在します。このモジュールのコード リファクタリングを行う前に、ユニット テスト ケースを作成して、現在のシステムに対する私の理解が正しいこと、および誤って機能を壊していないことを確認したいと考えています。私たちは RSpec を使用していますが、このヘルパー モジュールのメソッドの単体テスト ケースを作成する方法を教えてください。
1 に答える
3
あなたが持っていると仮定しますapp/helpers/address_helper.rb
:
module AddressHelper
def full_address(address)
"#{address.street} #{address.house_number}/#{address.local_number}"
end
end
あなたは下にスペックを書くことができますspec/helpers/address_helper_spec.rb
:
require 'spec/spec_helper' #or something similar, in order to load spec helper
describe AddressHelper do
describe "#full_address" do
it "displays the street, local and house number" do
address = stub('Address', :street => 'Mountain View', :house_number => '7', :local_number => '44')
helper.full_address(address).should eql('Mountain View 7/44')
end
end
end
ここで重要なのはhelper
メソッドです。これにより、ヘルパーメソッドにアクセスできます。この例では、次のようになります。
helper.full_address(address)
于 2010-11-25T20:51:01.883 に答える