A Neotest adapter for running Jest tests within Neovim, providing a unified testing interface.
neotest-jest is a Neovim plugin that serves as an adapter for running Jest tests within the Neotest framework. It enables developers to execute, debug, and manage Jest-based test suites directly from their Neovim editor, integrating testing into the development workflow without switching contexts.
JavaScript and TypeScript developers who use Neovim and Jest for testing, and want a unified testing experience within their editor.
Developers choose neotest-jest because it provides deep integration between Jest and Neovim through the Neotest ecosystem, offering configurable test execution, watch mode, debugging support, and monorepo handling—all without leaving the editor.
neotest-jest is a plugin that integrates Jest, the popular JavaScript testing framework, into the Neotest ecosystem for Neovim. It allows developers to run, debug, and manage Jest tests directly from their editor, streamlining the testing workflow without leaving the coding environment.
it.each or test.each.neotest-jest aims to provide a robust and configurable bridge between Jest and Neovim, following the Neotest philosophy of creating a unified testing experience within the editor.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly runs Jest tests within Neovim using the Neotest framework, allowing direct execution and management without leaving the editor, as highlighted in the integration with Neotest.
Supports custom Jest commands, arguments, config files, and environment variables, with detailed examples in the README for monorepos, watch mode, and parameterized tests.
Enables continuous test feedback by integrating Jest's watch mode, with configuration options and keymap examples provided in the README for easy setup.
Can automatically discover and run parameterized tests created with it.each or test.each, though it requires enabling jest_test_discovery and careful configuration to avoid performance issues.
Explicitly marked as a work in progress in the README, which may lead to instability, bugs, or breaking changes as the plugin is still under development.
Requires Neovim 0.9.0, Neotest 4.0.0, treesitter parsers, and detailed Lua setup with warnings about async contexts, making it inaccessible for those unfamiliar with Neovim's ecosystem.
Enabling parameterized test discovery spawns multiple Jest processes, which can slow down the editor, and the README recommends disabling Neotest's discovery option to mitigate this.