Interactive watch mode for Elixir's ExUnit tests with dynamic test selection and file watching.
mix test.interactive is an interactive test runner for Elixir's ExUnit framework that adds a watch mode and dynamic test selection capabilities. It allows developers to run tests interactively based on patterns, tags, or file changes, speeding up test-driven development workflows.
Elixir developers using ExUnit for testing, particularly those practicing test-driven development or seeking faster feedback loops during coding.
Developers choose mix test.interactive for its interactive commands and file-watching features, which provide more control and automation than standard `mix test`, inspired by Jest's watch mode and built on the reliable foundation of mix-test.watch.
Interactive watch mode for Elixir's mix test. https://hexdocs.pm/mix_test_interactive/
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Single keystroke commands like 'a' for all tests and 'f' for failed tests allow dynamic control without restarting, as detailed in the interactive commands section, speeding up TDD workflows.
Automatically runs tests on file changes with configurable exclusions and extra extensions, reducing manual reruns and improving feedback loops during development.
Supports custom commands, runners, and task overrides via application config or CLI, enabling integration with specialized environments like distributed Erlang nodes.
Allows running tests based on filename substrings or line numbers, similar to standard mix test patterns, providing precise test selection without complex scripting.
On Linux, requires installing inotify-tools for file watching, adding an extra setup step and potential compatibility issues, as noted in the compatibility section.
Features like desktop notifications need external packages like ex_unit_notifier, and custom runners require implementing the TestRunner behaviour, increasing initial setup complexity.
Specifically designed for Elixir's ExUnit framework, so it cannot be used with other test frameworks without significant modifications, restricting its versatility.