테스트 중에 IEx.pry
을 시작하려고합니다. 그러나 iex 세션에서 테스트를 실행할 수는 없습니다. 믹스를 사용하고 있지 않습니다.ExEx 내에서 ExUnit 테스트를 실행하는 방법
[email protected]:~/exercism/elixir/nucleotide-count$ iex test.exs
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [smp:4:4] [async-threads:10] [kernel-poll:false]
Interactive Elixir (1.3.4) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> ExUnit.run
** (exit) exited in: GenServer.call(ExUnit.Server, {:take_async_cases, 8}, 60000)
** (EXIT) time out
(elixir) lib/gen_server.ex:604: GenServer.call/3
(ex_unit) lib/ex_unit/runner.ex:71: ExUnit.Runner.loop/2
(stdlib) timer.erl:166: :timer.tc/1
(ex_unit) lib/ex_unit/runner.ex:13: ExUnit.Runner.run/2
코드를 제대로 넣었는지, 내가 TheTest."test adds two numbers"({})
로 직접 호출 할 수
ExUnit.start
defmodule Calc do
def add(a,b) do
a + b
end
end
defmodule TheTest do
use ExUnit.Case
test "adds two numbers" do
require IEx
IEx.pry
assert Calc.add(1, 2) == 3
end
end
나는 결국 ExUnit.run
정지 및 시간 초과로 실행 해보십시오. 하지만 전체 제품군을 시작하기를 바랬습니다.
왜 '믹스'를 사용하지 않습니까? – Simone
이 도움이 될 것입니다. http://stackoverflow.com/questions/29671156/pry-while-testing – Simone
'혼합'을 사용하지 않으므로 스스로 'ExUnit' 서버 응용 프로그램을 시작하기에 충분히 용감해야한다고 생각합니다. – mudasobwa