【问题标题】:What does specifying the type in an RSpec actually affect?在 RSpec 中指定类型实际上会影响什么?
【发布时间】:2017-09-07 17:54:44
【问题描述】:

我从来不知道这些选项有什么区别

RSpec.describe V2::DirectMessagesController, type: :controller

RSpec.describe V2::DirectMessagesController, type: :request

或者在哪里寻找解决办法

【问题讨论】:

  • 看看this的博文。

标签: ruby-on-rails ruby-on-rails-4 rspec rspec3


【解决方案1】:

请求规范为 Rails 的集成测试提供了一个精简的包装,旨在驱动整个堆栈的行为,包括路由 (由 Rails 提供)并且没有存根(这取决于您)。

控制器规范是 Rails 功能测试的 RSpec 包装器 (ActionController::TestCase::Behavior)。 它允许您在每个示例中模拟单个 http 请求,然后 指定预期结果,例如:

  • 渲染模板
  • 重定向
  • 在 与视图共享的控制器
  • cookie 与 回应

控制器规范文档:https://relishapp.com/rspec/rspec-rails/docs/controller-specs

请求规范文档:https://relishapp.com/rspec/rspec-rails/docs/request-specs/request-spec

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-19
    • 2018-09-21
    • 2020-12-16
    • 1970-01-01
    • 1970-01-01
    • 2021-12-27
    相关资源
    最近更新 更多