仕様間でメモのついたメソッドを共有したい。だから私はこのような共有コンテキストを使用しようとしましたRSpecで自動的にコンテキストを共有する
RSpec.configure do |spec|
spec.shared_context :specs do
let(:response) { request.execute! }
end
end
describe 'something' do
include_context :specs
end
それはうまくいきます。しかし、私は約60のスペックファイルを持っているので、私は明示的にそれらのそれぞれにコンテキストを含める必要があります。 spec_helper.rb
にすべてのサンプルグループの共有コンテキスト(または少なくともlet
定義)を自動的に含める方法はありますか?
RSpec.configure {|c| c.before(:all) { do_stuff }}
let
がRSpec.configure
ではサポートされていませんが、あなたはを設定することができます:あなたはconfigure-class-methodsとConfiguration経由RSpec.configure
を使用してグローバルbefore
フックを設定することができ、この
RSpec.configure do |spec|
spec.include_context :specs
end
これはおそらくhttp://stackoverflow.com/questions/9965111/rspec-shared-context-and-include-context-for-all-specsを複製し、それはまだ答えを持っていません。 – p0deje