我有一个使用redis进行数据存储的凤凰网络应用程序。我的配置文件夹包含以下文件:
config.exs
config :exredis,
url: System.get_env("REDIS_URL") || "redis://redis:6379/0",
test.exs
config :exredis,
url: "redis://redis:6379/1"
当我使用
从控制台运行测试时mix test test/my_test.ex
使用redis的生产实例而不是测试实例。
我可以通过运行
使其工作REDIS_URL="redis://redis:6379/1" mix test test/my_test.exs
但是如何强制它自动使用测试配置?
我使用mix test test/my_test.exs
从控制台运行测试。
答案 0 :(得分:4)
正如评论中所阐明的那样,您已在import_config "#{Mix.env}.exs"
下面添加了该代码。
import_config "#{Mix.env}.exs"
必须保留在config.exs
的底部,否则test.exs
无法覆盖config.exs
中的任何配置集,因为它会在配置之前进行评估在import_config "#{Mix.env}.exs"
之后设置。