【问题标题】:Elixir ExUnit test with custom dependency environnement具有自定义依赖环境的 Elixir ExUnit 测试
【发布时间】:2017-04-04 20:45:58
【问题描述】:

我有一个项目 A,它也依赖于我创建的依赖项 B...

当我想用简单的mix test 在 A 上启动测试时,它会获取依赖项 B,编译它并在 :prod 环境中启动它...

这意味着 A 在 :test 环境中,B 在 :prod 环境中。

我希望测试在:dev 环境(或除:prod 之外的其他任何东西)中启动依赖项,有没有办法做到这一点?

【问题讨论】:

  • 虽然这里看起来有点矫枉过正,但可能会引入their own compiler 并将所请求环境中B 项目的编译委托给它。这样,本地项目B 将始终在与当前A 相同的环境中编译。

标签: elixir ex-unit


【解决方案1】:

也许您的MIX_ENV 是prod 而mix test 不会将其更改为test。 明确尝试:

MIX_ENV=test mix test

and for dev

MIX_ENV=dev mix test

【讨论】:

  • 其实问题不在这里,我没有设置 MIX_ENV 环境变量。但是,您指出了我的错误,即 Mix.env 被用作编译时间而不是运行时间。
  • 不幸的是,我不能接受答案...编辑它,以便指出编译时间 Mix.env(在:prod)和运行时间 Mix.env 之间的区别,我会:-)
  • “我没有设置 MIX_ENV 环境变量”——你总是这样。如果您没有明确设置,mix 已经为您完成了。
  • @mudasobwa:我的意思是我没有export MIX_ENV=prod...当然混合对你有用,但我不会过度收费...
猜你喜欢
  • 2019-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-13
  • 2016-03-02
  • 1970-01-01
相关资源
最近更新 更多