Techioz Blog

RSpec でのモジュールのテスト

概要

RSpec でモジュールをテストする際のベスト プラクティスは何ですか?いくつかのモジュールがいくつかのモデルに含まれており、今のところ、各モデルに対して単純にテストを重複して行っています (違いはほとんどありません)。乾燥させる方法はありますか?

解決策

素晴らしい方法 =>

let(:dummy_class) { Class.new { include ModuleToBeTested } }

あるいは、モジュールを使用してテスト クラスを拡張することもできます。

let(:dummy_class) { Class.new { extend ModuleToBeTested } }

before(:each) でダミー クラスを定義するためにインスタンス変数を使用するよりも、‘let’ を使用する方が優れています。

RSpec let() をいつ使用するか?