タグ

Rubyとtestingに関するat_homeのブックマーク (2)

  • 同じexampleを複数のテストで共有する - うなの日記

    RSpec documentationの「Shared Example Groups」に説明がありますが、「shared_examples_for」を使用して同じexampleを複数のテストで共有することが可能です。 「shared_examples_for <共有exampleグループ名>」で共有するexampleのグループ(「Shared Example Groups」と呼ばれるらしい。)を作成し、 共有したいテスト内で「it_should_behave_like <共有exampleグループ名>」としてexampleを取り込めばOK モジュールをincludeする感じですな。 exampleだけでなく、beforeやafterも共有できます。 # shared_examples_for で 共通のexampleを定義。 shared_examples_for "shared" do

    同じexampleを複数のテストで共有する - うなの日記
  • [RSpec] Mock API

    Mock Object Mock Objectの作成 my_mock = mock(<name>) my_mock = mock(<name>, <options>) person = mock('person', :null_object => true) Mockは名前を引数に取る。仕様の検証が終わった際に全てのMockが検証される。 option引数をハッシュで与えることでMockの振る舞いを調整できる。現在、:null_objectのみがサポートされている。:null_object => trueを引数に渡すとMockに対する全てのメソッドがMock自身を返すようになる。 Mockに対してスタブメソッドを定義する person.should_receive(:name) # person.name => nil person.should_not_receive(:name) #

  • 1