Test cases
defmodule MyTest do
  use ExUnit.Case
  use ExUnit.Case, async: true  # for async
  test "the truth" do
    assert 1 + 1 == 2
  end
end
Capture IO
import ExUnit.CaptureIO
test "capture io" do
  result = capture_io(fn ->
    IO.puts "sup"
  end)
  assert result == "sup\n"
end
Capture logs
config :ex_unit, capture_logs: true
Async
defmodule AssertionTest do
  # run concurrently with other test cases
  use ExUnit.Case, async: true
end
Assertions
assert x == y
refute x == y
assert_raise ArithmeticError, fn ->
  1 + "test"
end
assert_raise ArithmeticError, "message", fn -> ...
assert_raise ArithmeticError, ~r/message/, fn -> ...
flunk "This should've been an error"
See: Assertions
0 Comments 这个速查表。 写评论!