ruby-on-rails - Rails 3 升级 : Generate routing tests

标签 ruby-on-rails testing rspec routes

目前我正在努力从 Rails 2.3.smthn 升级到 Rails 3.0。 该应用程序有 200 多条路由,在使用新的 Router API 重写路由之前,我想为这些路由编写 (RSpec) 测试。

因为有很多路由并且为它们编写覆盖范围将是很多“繁重的工作”,我想知道是否有一种方法可以为这些路由生成测试?

最佳答案

我会使用 rake routes 来列出您当前的路线,然后编写一个小的 Ruby 程序来解析每一行并生成您想要的测试,其形式为:

expect(:get => "/articles/2012/11/when-to-use-routing-specs").to route_to(
  :controller => "articles",
  :month => "2012-11",
  :slug => "when-to-use-routing-specs"
)

https://www.relishapp.com/rspec/rspec-rails/docs/routing-specs 中所述

但是,我不确定如何测试命名路由,或者如何测试是否没有定义其他路由。您可能想通过一个测试来补充这一点,该测试将 rake routes 的先前输出与 rake routes 的当前输出进行比较。

关于ruby-on-rails - Rails 3 升级 : Generate routing tests,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18659104/

相关文章:

ruby-on-rails - 从数组中查找或创建

ruby-on-rails - 停止 postgres 进程重新启动 - mac

需要的性能测试场景

ruby-on-rails - 记录 Rails 应用程序中的所有方法调用

ruby-on-rails - Rspec 共享定义加载两次

ruby-on-rails - Ruby lambda 执行与规范中的 should

ruby-on-rails - 如何为多态关联添加过滤器?

ruby-on-rails - Heroku dev 上的 Postgres 进程 fork 错误

java - 将参数从 Eclipse 传递到 TestNG

r - 测试简单线性回归中的斜率是否等于 R 中的给定常数