Elixir ExUnit:被测模块不可用

Elixir ExUnit: module under test is not available

我正在学习本教程:http://elixir-lang.org/getting-started/mix-otp/agent.html

所以在我的 Elixir 项目中,我有一个模块 lib/kv/bucket.exs 和一个针对它的测试 test/kv/bucket_test.exs

当我进行 运行 混合测试时,出现以下错误:** (UndefinedFunctionError) undefined function KV.Bucket.start_link/0 (module KV.Bucket is not available) 我是否遗漏了什么?

因此,模块必须使用 .ex 扩展名而不是 .exs,并且您需要 运行 mix compile 来编译新模块。之后,mix test 能够找到模块并且一切正常。