Supertester (Supertester v0.6.0)

Copy Markdown View Source

Supertester is an OTP-focused testing toolkit for Elixir applications.

It provides deterministic synchronization helpers, process/supervisor isolation, chaos and performance utilities, and OTP-aware assertions for testing concurrent systems without timing hacks.

Core Modules

Usage

Add supertester as a test dependency in your mix.exs:

def deps do
  [
    {:supertester, path: "../supertester", only: :test}
  ]
end

Then use the helpers in your tests:

defmodule MyApp.MyModuleTest do
  use Supertester.ExUnitFoundation, isolation: :full_isolation
  import Supertester.OTPHelpers
  import Supertester.Assertions

  describe "my functionality" do
    setup do
      setup_isolated_genserver(MyModule, "my_test")
    end

    test "my test", %{server: server} do
      assert_genserver_responsive(server)
    end
  end
end

Summary

Functions

Returns the version of Supertester.

Functions

version()

@spec version() :: String.t()

Returns the version of Supertester.