我正在尝试在调试测试时加载 iex.iexs
文件。我在 Mix.exs
中创建了一个别名
来尝试导入它。
defp aliases do
[
...,
"ex.file": [&import_iex_file/1, "compile"]
]
end
defp import_iex_file(_var) do
require IEx.Helpers
# This raises a File.Error if ~/.iex.exs doesn't exist.
if "./.iex.exs" |> Path.expand() |> File.exists?() do
IEx.Helpers.import_file("./.iex.exs")
end
end
当我使用 iex -S mix test_path
运行测试时,文件已加载,但是当它停止在 IEx.pry
时,我无法访问该别名我在 .iex.iex
文件中添加了。
最佳答案
请注意,文件名应为 .iex.exs
。正如您所注意到的,运行测试不会启动 IEx
session ,因此不会加载该文件。相反,最好在 tests/test_helper.exs
文件中进行测试所需的任何设置。如果您确实需要重复使用 .iex.exs
文件中的设置/快捷方式,您可以将其包含在 test_helper.exs
文件中,如下所示:
# tests/test_helper.exs
require IEx.Helpers
IEx.Helpers.import_file(".iex.exs")
ExUnit.start()
关于elixir - iex.iexs 文件未在测试环境中加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71485272/