为了在集成测试失败时进行调试,我仍然希望能够看到我的应用程序日志。有没有我可以传递给mix test任务的命令来完成此任务?

最佳答案

每个混合项目都有一个config.exs文件。混合开始时,它将加载该文件。 lix剂中的一种常见模式是为不同的环境定义配置,例如test.exsdev.exsprod.exs等。

许多类似Phoenix的项目都会在config文件夹中为您生成这些文件,并且您会在config.exs行中看到以下行:

import_config "#{Mix.env}.exs"

当您运行mix test时,它将MIX_ENV环境变量设置为“test”,这意味着import_config行将加载test.exs文件。

因此,为了只为测试设置日志记录级别,可以在test.exs文件中编写以下内容:
# Print only warnings and errors during test
config :logger, level: :warn

09-10 16:35