我正在开发rails API,现在正计划为控制器编写一些RSpec测试.

推荐答案

Rails 3 & 4

Controller specs-控制器规范是Rails功能测试的RSpec包装.它允许您在每个示例中模拟一个http请求,然后

Request specs-请求规范为Rails的集成测试提供了一个薄薄的包装,并且

所以,如果你想测试API控制器,我建议在测试单个请求时使用Controller specs.


轨道5+

与Rails版本4的控制器和请求规格相比,Rails 5提高了request specs的速度和真实性.The official recommendation of the Rails team and the RSpec core team is to write request specs instead (of controller specs)

Ruby-on-rails相关问答推荐

带有rails 7.1的Lightbox2未初始化

Rails 7中的Turbo流

Django模型在关系更新时更新相关对象

如何配置我的 Rails 应用程序(使用 Puma)以通过 HTTPS 提供服务?

Rails 3.1 assets资源 - 奇怪的开发服务

Rails:使用 RSpec 测试命名范围

在 Rails 4 中检测用户代理 - 读取 HTTP 标头

设计和强大的参数

Rails 服务对象与 lib 类

Rspec/Capybara 正在加载,循环要求被认为是有害的

Rails:将所有未知路由重定向到 root_url

如何在 ROR (Ruby) 中显示 PDF?

控制器 helper_method

如何对这个哈希数组进行分组?

强参数需要多个

错误:无法构建 gem 原生扩展 - 安装 mysql2 时出错

我怎样才能看到水豚在失败的黄瓜步骤中发现了什么?

我是否必须手动卸载所有依赖的 gem?

没有路由匹配缺少必需的键:[:id]

rails路由中资源和资源之间的区别?