ruby-on-rails – 如何使用rails 2.3.8和bundler设置rspec?
我发现很多指南都没有使用捆绑器.
这是我用于测试的gemfile的一部分: group :test do gem "cucumber" gem "cucumber-rails" gem "launchy" gem "hpricot" gem "gherkin" gem "capybara" gem "rspec" gem "rack" gem "rspec-rails" gem "webrat" gem "database_cleaner" gem "factory_girl" gem "shoulda",:require => nil gem "shoulda-matchers",:git => "https://github.com/thoughtbot/shoulda-matchers" gem "cobravsmongoose" gem "rcov" gem "ZenTest" gem "autotest-growl" gem "inherited_resources","1.0.2" gem "responders","0.4.2" end 但即使如此,发电机也从未存在过. 如果宝石作为插件安装,将安装生成器……但我认为这只会给应用程序增加膨胀,不同的宝石在不同的操作系统上编译不同. 那么,任何人都有任何指南用于使用带有rails 2.3.x的bundler设置rspec吗? 解决方法
我们仍然在rails 2.3.8上有一个应用程序,但我们更新它使用bundler(Gemfile),它也有rspec和黄瓜工作.
确保按照捆绑包指南使您的应用程序正确使用Gemfile的gem加载而不是Rails的默认值:http://gembundler.com/rails23.html 获得preinitializer.rb并更改config / boot.rb正常工作后,您可能需要确保使用正确版本的rspec和cucumber. 我认为通用宝石’rspec-rails’可能会尝试为你安装rspec 2,但这只适用于Rails 3(我相信),所以你可能需要专门告诉它使用rspec 1.x. 我们的测试组看起来像这样(虽然我认为其中一些宝石可能比他们需要的更旧,但是我们已经更新它们已经有一段时间了,因为应用程序的rails 3升级正在等待我们不太担心什么它现在看起来像): group :test,:cucumber do gem 'autotest-fsevent' gem 'test-unit','~>1.2.3' gem "hoe","1.5.1" gem 'autotest-rails','4.1.0' gem 'rspec','1.3.2' gem 'rspec-rails','1.3.4' gem 'cucumber','0.10.0'#,'0.9.0' # Change this shinanigans to 0.4.0 when it gets released ;) gem 'cucumber-rails','0.3.2' gem 'database_cleaner','0.5.2' gem 'capybara','0.3.9' gem 'launchy' gem 'dupe','0.5.1' gem 'factory_girl','1.2.4' gem 'email_spec','~>0.6.2',:require => false end 执行此操作并运行bundle install之后,我可以在输出中键入命令script / generate –help,其中包含以下内容: Installed Generators Rubygems: business_time_config,cucumber,culerity,dupe,email_spec,feature,integration_spec,paperclip,rspec,rspec_controller,rspec_model,rspec_scaffold Builtin: controller,helper,integration_test,mailer,metal,migration,model,observer,performance_test,plugin,resource,scaffold,session_migration 如您所见,黄瓜和rspec发生器实际上在那里可用. 我认为您的问题可能是它正在安装的rspec版本.如果它正在安装rspec版本2,那么它与rails 3相关联,它以不同的方式处理gems中的生成器我相信(我相信它们必须放在不同的目录结构中).这可能就是你的rails 2.3.x应用程序没有看到它们的原因. 你不必完全按照我的版本,我不是一个粉丝(根本没有)把特定版本放在Gemfile中,但是我们最后在这里做了因为a)我们没有完全理解bundler,并且b)我们需要确保我们获得与rails 2.3兼容的宝石. 希望这有帮助!如果您有疑问,请告诉我. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |