A Neovim wrapper for running tests across multiple programming languages and test runners.
nvim-test is a Neovim plugin that acts as a wrapper for running tests across multiple programming languages and test runners directly within the editor. It solves the problem of fragmented testing workflows by providing a unified interface to execute tests without switching to external terminals or tools.
Neovim users who write tests in languages like JavaScript, Python, Ruby, Rust, or Go and want an integrated testing experience within their editor.
Developers choose nvim-test for its language-agnostic design, support for popular test runners, and seamless Neovim integration, which eliminates context switching and speeds up test-driven development.
A Neovim wrapper for running tests
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports nine programming languages including JavaScript, Python, Ruby, and Rust, with built-in integrations for popular runners like Jest, pytest, and RSpec, as listed in the README's feature table.
Offers commands like TestNearest to run the test closest to the cursor, TestFile for file-level tests, and TestSuite for entire suites, enhancing test-driven development workflows directly in Neovim.
Allows configuration of terminal type (terminal or toggleterm), layout (vertical, horizontal, float), and dimensions through termOpts, enabling tailored test display without leaving the editor.
Each language runner can be customized with specific commands, arguments, environment variables, and file patterns, providing flexibility for project-specific testing needs as shown in the setup examples.
Requires manual setup for each test runner, including specifying command paths and arguments, which can be tedious and error-prone for multi-language projects, as highlighted in the runner configuration section.
Lacks GUI elements or advanced visualization for test results, relying solely on terminal output, which may limit debugging capabilities compared to IDE-integrated tools.
Needs pre-installed and correctly configured test runners; failures can occur if the environment isn't set up properly, adding maintenance overhead beyond the plugin itself.