ruby-on-rails - 我必须运行 rake db :test:load each time manually before runnings tests?

标签 ruby-on-rails ruby ruby-on-rails-3 rspec tdd

我是 Ruby on Rails 新手。 我正在尝试通过脚手架设置一个简单的 Web 应用程序。并使用 RSpec 进行测试。现在在脚手架命令之后:

rails generate scaffold VideoSegment file_path:string short_name:string description:string

我运行了rake db:migrate,但这很清楚,将数据引入我的开发数据库。 但我之前的测试并不顺利:

rake db:test:load

将我的开发数据库的架构引入测试数据库。没有办法自动化这一步吗?或者我是否必须在每个脚手架之后再次加载测试数据库?

PS:当然我知道 Scaffold 并没有做最好的事情,但对于我的概念验证需要来说它已经足够了。

感谢您的任何建议。

最佳答案

每当您运行 rspec 时,它都会使用以下任务为您准备测试架构:db:test:prepare

因此,生成迁移后,您必须执行 rake db:migrate 来更新开发架构,然后运行您的规范,这将自动为您准备测试数据库。

关于ruby-on-rails - 我必须运行 rake db :test:load each time manually before runnings tests?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7131219/

相关文章:

javascript - 根据 Rails/React 应用程序上 api 调用的状态更新我的 View

ruby-on-rails - Rails 日期晚于

ruby-on-rails - 如何获取数组中的下一个和上一个元素,Ruby

arrays - 计算 x 和 y 之间的值在数组中出现的次数

ruby-on-rails-3 - Rails 3 ActionMailer : :escape => false doesn't work, 也不 raw()

ruby-on-rails - Rails 迁移中的复数到单数转换麻烦?

javascript - 动态组合图像和文本并使整个 div 用作超链接

ruby - 如何使用 Ruby 和 Sequel 将图像存储在数据库中?

ruby-on-rails-3 - 如何使用非标准关系名称指定嵌套 CanCan 授权?

mysql - 如何获得与可排名数据模型关联的 TOP 10 标签? -- 高级 MySQL 或 ActiveRecord 查询问题