【发布时间】:2013-05-21 14:47:54
【问题描述】:
我正在使用 RSpec 来测试一些引擎模型。
我的偏好是在应用程序之外测试独立于(虚拟)应用程序的部分。我更愿意在顶层进行非应用测试,而不是隐藏在 spec/dummy/spec 中。
问题在于,如果未安装引擎,默认情况下 (AFAICT) 引擎初始化程序不会运行。
我是否应该按照预期进行,即,将 所有 我的规范放在虚拟应用程序中并从虚拟应用程序的目录中运行 RSpec,即使测试与整个应用?
或者我应该从非应用规范的顶级规范助手运行初始化程序吗?还是其他方式?
如果我这样做了,会有虚拟应用的影响吗?
【问题讨论】:
-
@apneadiving 谢谢 :) 初始化器呢?或者我应该将它们移动到
lib中的某个地方,还是...?你在这里所拥有的或多或少是我现在拥有的初始化器。 -
好的,我明白了,如果初始化程序设置了必要的上下文,您可以在某些规范中要求它们。这还不够吗?
-
@apneadiving 可能,尽管有些是跨规格使用的猴子补丁。我的 spec_helper 中可能只是有一个问题,修复它可以让我跨环境运行带有适当初始化程序的两组规范,但我还没有弄清楚咒语。
标签: ruby-on-rails ruby rspec factory-bot rails-engines