rspec-rails 3 генерує spec_helper.rb
і rails_helper.rb
. spec_helper.rb
призначений для специфікацій, які не залежать від Rails (наприклад, специфікацій для класів у каталозі lib). rails_helper.rb
призначений для специфікацій, які залежать від Rails (у проекті Rails більшість або всі з них). rails_helper.rb
вимагає spec_helper.rb
. Так що ні, не позбавляйся rails_helper.rb
; вимагати цього (і ні spec_helper.rb
) у своїх специфікаціях.
Якщо ви хочете, щоб ваші специфікації, які не залежать від Rails, забезпечували, щоб вони не залежали від Rails, і працювали якомога швидше, коли ви запускаєте їх самі, вам може знадобитися, spec_helper.rb
а не rails_helper.rb
в них. Але це дуже зручно -r rails_helper
в вашому , .rspec
а не вимагати одного помічника або інший в кожному файлі специфікації, так що обов'язково буде популярним підходом.
Якщо ви використовуєте попередній завантажувач spring, кожен клас потрібно завантажувати лише один раз, і Spring завантажує класи з бажанням, навіть якщо ви запускаєте лише одну специфікацію, яка вимагаєspec_helper
, тому spec_helper
в деяких файлах немає такої великої потреби .
Джерело: https://www.relishapp.com/rspec/rspec-rails/docs/upgrade#default-helper-files