Как спецификаций/помощника рельсы.rb отличается от spec / Spec helper.РБ? Мне это нужно?
Я делаю рельсы учебник во второй раз. Когда я вхожу в это
rails generate integration_test static_pages
Я spec/rails_helper.rb и spec/spec_helper.rb вместо spec/spec_helper.rb
теперь, когда я запускаю свои тесты, они длиннее (более "многословные") и медленнее, чем когда я делал это в последний раз.
Мне интересно, в чем разница между этими двумя файлами, и если я сделал что-то неправильно.
Кроме того, есть ли способ избавиться от rails_helper.rb файл, не испортив все?
1 ответ:
rspec-rails 3 генерирует
spec_helper.rbиrails_helper.rb.spec_helper.rbпредназначен для спецификаций, которые не зависят от рельсов (например, спецификации для классов в каталоге lib).rails_helper.rbдля спецификаций, которые зависят от рельсов (в проекте Rails, большинство или все из них).rails_helper.rbтребуетspec_helper.rb. Так что нет, не избавляйтесь отrails_helper.rb; требуют (а неspec_helper.rb) в ваши спецификации.если вы хотите, чтобы ваши спецификации, не зависящие от рельсов, обеспечивали, чтобы они не зависели от рельсов, и работали как можно быстрее, когда вы управляете ими сами по себе, вы могли бы потребовать
spec_helper.rb, а неrails_helper.rbв те. Но это очень удобно-r rails_helperв своем.rspecвместо того, чтобы требовать одного помощника или другого в каждом файле спецификации, так что это, несомненно, будет популярным подходом.если вы используете spring preloader, каждый класс должен быть загружен только один раз, и spring загружает классы с нетерпением, даже если вы запускаете только одну спецификацию, которая требует
spec_helper, так что там не так много значения в требуется толькоspec_helperв некоторых файлах.Источник: https://www.relishapp.com/rspec/rspec-rails/docs/upgrade#default-helper-files
Comments