【发布时间】:2013-03-18 22:50:48
【问题描述】:
当我使用 mongoid 创建一个新的 rails 应用程序时:
rails new tddapp --skip-active-record
cd tddapp
echo "gem 'mongoid'" >> Gemfile
bundle
rails g mongoid:config
然后生成一个简单的脚手架:
rails g scaffold building height:Integer name:String
脚手架已创建,最小的应用程序运行良好。但是脚手架生成的测试失败了:
NoMethodError: undefined method `buildings' for #<BuildingsControllerTest:0x007fa6afbf78d8>
违规行表明测试控制器找不到夹具:
@building = buildings(:one)
mongoid 生成器非常好,可以在 test/fixtures/buildings.yml 中创建固定装置,这表明与脚手架功能测试的整个想法有某种程度的合作。
是否有一些配置设置或我需要更改以使功能测试加载 mongoid 的装置?或者脚手架功能测试是否会因 mongoid 而失败? (如果是这样,为什么 mongoid 还要费心创建fixture 文件?)
【问题讨论】:
-
您使用的是 test-unit 还是 rspec?
-
Scaffold 测试子类
ActiveSupport::TestCase我相信它基于 test-unit / minitest。
标签: ruby-on-rails mongoid automated-tests scaffolding