撬testing

我在Elixir很新,但是有很多乐趣!

我来自Ruby世界,所以开始寻找类比。 并存在debugging工具pry 。 使用binding.pry我可以打断任何会话。 我在Elixir- IEx.pry发现了类似的东西。 但是当我通过ExUnittesting某些东西的时候它不起作用。

问题 – 是否有可能中断testing会话并在当前环境下运行iex?

您需要在一个iex会话中开始您的testing – 您可以通过运行iex -S mix test来做到这一点。 那么你可以在你的testing中使用IEx.pry

 require IEx test "the truth" do one = 1 IEx.pry assert one + one == 2 end 

你会被问到是否允许窥探会话:

 Request to pry #PID<0.143.0> at test/test_app_test.exs:7. Allow? [Yn] 

在这一点上的所有背景都将为您提供:

 pry(1)> one 1 

我没有足够的声望发表评论,但增加了帕维尔的答案..

如果使用–trace运行testing,则可以避免testing超时。

iex -S mix test --trace