是否需要在测试服上手动启动 OTP 应用程序
Is starting OTP application manually required on test suit
我使用,例如,HTTPotion
。
在mix.exs
中是这样列出的:
def application do
[ applications: [:httpotion]
end
我需要在 test_helper 或设置宏中提供 HTTPotion.start()
吗?
有时我的测试会失败,因为 HTTPotion 没有启动,所以我在 helper.xml 中添加了这一行。然而,过一段时间它又会失败,所以我需要删除它,编译,然后再次添加,再次编译,它又可以工作了。
我不明白问题出在这个领域还是其他领域。
简短回答:不,你不知道。
当你想在 iex 中 运行 HTTPotion 时,每次之前你都必须使用这句话 HTTPotion.start
,但这就是使用 mix 的全部意义 - 它会为你处理启动应用程序背景。
请阅读this注释,尤其是句子:
Mix normally starts the whole hierarchy of applications defined in our project’s mix.exs file and it does the same for all dependencies if they depend on other applications.
.
我使用,例如,HTTPotion
。
在mix.exs
中是这样列出的:
def application do
[ applications: [:httpotion]
end
我需要在 test_helper 或设置宏中提供 HTTPotion.start()
吗?
有时我的测试会失败,因为 HTTPotion 没有启动,所以我在 helper.xml 中添加了这一行。然而,过一段时间它又会失败,所以我需要删除它,编译,然后再次添加,再次编译,它又可以工作了。
我不明白问题出在这个领域还是其他领域。
简短回答:不,你不知道。
当你想在 iex 中 运行 HTTPotion 时,每次之前你都必须使用这句话 HTTPotion.start
,但这就是使用 mix 的全部意义 - 它会为你处理启动应用程序背景。
请阅读this注释,尤其是句子:
Mix normally starts the whole hierarchy of applications defined in our project’s mix.exs file and it does the same for all dependencies if they depend on other applications.
.