【发布时间】:2017-03-06 15:37:53
【问题描述】:
我在 RSpec 中做了一个使用多个类的集成测试。其中一些是模型;其他类是非模型类,位于lib 下。
测试不是由 get/post 调用驱动的(否则我会将其设为功能测试或请求测试)。它包含一个后端进程,通常由 Sidekiq 工作人员或系统中发生的事件触发。
RSpec 目录树下放置此规范的正确目录是什么?
【问题讨论】:
标签: ruby-on-rails rspec
我在 RSpec 中做了一个使用多个类的集成测试。其中一些是模型;其他类是非模型类,位于lib 下。
测试不是由 get/post 调用驱动的(否则我会将其设为功能测试或请求测试)。它包含一个后端进程,通常由 Sidekiq 工作人员或系统中发生的事件触发。
RSpec 目录树下放置此规范的正确目录是什么?
【问题讨论】:
标签: ruby-on-rails rspec
您可以为集成规范创建一个特殊的目录(例如称为 integration_tests)。不过,它会破坏 RSpec 从位置推断规格类型的能力。
作为第二种选择,您可以在最高抽象级别编写集成测试。所以它不会有一个特殊的地方,一些集成测试将在models,一些在controllers,还有一些在lib。作为一个缺点,您的集成测试自然会与单元测试相冲突。
我已经看到了这两种选择。第二种在较大的项目中比较常见,其中前一种主要用于小型项目和 gems
【讨论】: