Elixir ExUnit测试与自定义依赖环境
我有一个项目a,它也依赖于我创建的依赖项B 当我想用一个简单的Elixir ExUnit测试与自定义依赖环境,elixir,ex-unit,Elixir,Ex Unit,我有一个项目a,它也依赖于我创建的依赖项B 当我想用一个简单的混合测试在A上启动测试时,它将获取依赖项B,编译它并在:prod环境中启动它 这意味着A在:test环境中,B在:prod环境中 我想让测试在:dev环境(或除:prod以外的任何其他环境)中启动依赖项,有没有办法做到这一点?也许您的混合环境是产品,而混合测试不会将其更改为测试。 请明确尝试: MIX_ENV=test mix test and for dev MIX_ENV=dev mix test 实际上,问题不在这里,我没
混合测试在A上启动测试时,它将获取依赖项B,编译它并在:prod
环境中启动它
这意味着A在:test
环境中,B在:prod
环境中
我想让测试在:dev
环境(或除:prod
以外的任何其他环境)中启动依赖项,有没有办法做到这一点?也许您的混合环境是产品,而混合测试不会将其更改为测试。
请明确尝试:
MIX_ENV=test mix test
and for dev
MIX_ENV=dev mix test
实际上,问题不在这里,我没有设置MIX_ENV ENV变量。但是你指出我的错误,Mix.env是在编译时而不是运行时使用的。不幸的是,我不能接受这个答案,因为它是。。。编辑它,以便指出编译时Mix.env(in:prod)和运行时Mix.env之间的差异,我将:-)“我没有设置Mix_env env变量”-您总是这样做。如果您没有明确设置它,mix
已经为您完成了它。@mudasobwa:我的意思是我没有export mix\u ENV=prod
。。。当然,这种混合方式对您有好处,但我不会滥收费用……尽管这里看起来有些过分,但您可能会在请求的环境中引入并委托编译B
项目。这样,本地的项目B
将始终在与当前的A
相同的环境中编译。