是否可以在ActionDispatch::IntegrationTest中更改Rails ENV ?



ENV变量值在config/application中设置。是否可以在ActionDispatch::IntegrationTest中仅更改特定的测试用例?像这样:

class DummyTest < ActionDispatch::IntegrationTest
context '...' do
it '...' do
ENV['API_URL'] = ...
end
end
end

我已经试过了,但似乎没有改变什么。由于

我认为您错过了Rails文档中配置的创建Rails环境。😉

这应该可以解决你的问题,而不需要猴子在你的规格上修补任何东西。

我还建议使用dotenv gem,它可以帮助您处理环境变量。在您的例子中,您至少会有这些文件:

  • .env.development
  • .env.test

如果你真的想为一个特定的测试更新一个值,我建议像这里建议的那样存根它

最新更新