我想在我的 Elixir 项目中有两组单独的单元测试,我可以使用不同的 ExUnit 配置单独运行它们。我正在研究 ExUnit 格式化程序,我正在尝试为它编写单元测试。为了测试它,我想我会创建另一个目录 ( example_tests
),其中包含一个test_helper.exs
类似于 in 的文件test/
,但将 ExUnit 配置为使用我的自定义格式化程序。我将我的格式化程序添加为 ExUnit 格式化程序,然后创建了一个测试模块example_tests
。现在的问题是我不知道如何配置 ExUnit 以example_tests/
使用example_tests/test_helper.exs
.
我发现有一个test_paths
配置参数可以在mix.exs
文件中设置。问题是值是在每个项目的基础上设置的,我需要它有两个不同的值(通常只是["test"]
为了使用 formatter 进行测试运行["example_tests"]
)。我假设我可以在每个任务的基础上覆盖配置值,所以我也创建了一个 example_tests 任务,但我不知道如何更改配置。
有没有办法Mix.Project.config
在每个任务的基础上自定义项目配置()?或者,有没有更好的方法来创建具有不同 ExUnit 配置的两组单独的测试?
更新:
这是test
Mix 任务的源代码链接:https ://github.com/elixir-lang/elixir/blob/master/lib/mix/lib/mix/tasks/test.ex