Controller Specs vs Request Specs?

前端 未结 3 1175
伪装坚强ぢ
伪装坚强ぢ 2021-02-03 19:29

I\'m working on a rails API and I\'m now planning on writing some RSpec tests for the controllers. I\'ve been reading around and I haven\'t been able to figure out what the act

3条回答
  •  臣服心动
    2021-02-03 20:28

    Rails 3 & 4

    Controller specs - A controller spec is an RSpec wrapper for a Rails functional test. It allows you to simulate a single http request in each example, and then specify expected outcomes

    Request specs - Request specs provide a thin wrapper around Rails' integration tests, and are designed to drive behavior through the full stack, including routing (provided by Rails) and without stubbing (that's up to you).

    So if you want to test API controllers I would recommend to use Controller specs as you are testing single requests.


    Rails 5+

    Rails 5 improved the speed and realism of request specs over Rails version 4's controller and request specs. The official recommendation of the Rails team and the RSpec core team is to write request specs instead (of controller specs).

提交回复
热议问题