awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
jestjs avatar

jestjs/jest

0
View on GitHub↗
45,448 星标·6,662 分支·TypeScript·MIT·16 次浏览jestjs.io↗

Jest

Jest is a JavaScript testing framework designed for writing and running automated test suites to verify the correctness of JavaScript and TypeScript code. It functions as a comprehensive toolset that integrates a test runner, a mocking and spying library, a snapshot testing tool, and a code coverage tool.

The framework distinguishes itself through snapshot testing, which records the serialized state of data structures to detect regressions in future executions. It also includes a mocking and spying library for simulating external dependencies and tracking function calls to isolate code during tests.

The project covers a broad range of capabilities including parallel and distributed test execution, code coverage analysis, and dependency isolation. It provides utilities for virtual timer manipulation, expectation assertions, and a file system watch mode for iterative development.

The system supports source transformation via build tool integration and offers configuration for execution policies and test environment settings.

Features

  • JavaScript Application Testing - Provides a comprehensive framework for writing and running automated tests for JavaScript and TypeScript code.
  • Code Coverage - Analyzes the codebase to identify untested sections by tracking executed lines during test runs.
  • Testing Frameworks - Acts as a full-featured testing framework for writing and executing unit, behavioral, and integration tests.
  • Build Tool Integrations - Integrates with external compilers and bundlers to transform source code into executable formats.
  • Module Resolvers - Implements a custom module resolver to intercept Node.js loading for mock injection and file transformations.
  • Test Environment Isolation - Creates a clean global execution context for every test file to ensure complete isolation and prevent state leakage.
  • Code Coverage Tools - Injects runtime counters into source code to track and report which lines and branches are executed.
  • Function Call Tracking - Provides a spying mechanism that records function invocations to verify passed arguments and total call counts.
  • Snapshot Testing - Provides a system for recording serialized data structures and comparing them against baselines to detect regressions.
  • Mocking and Spying Libraries - Ships an integrated mocking and spying library to simulate external dependencies and track function invocations.
  • Snapshot Testing - Implements snapshot testing by serializing data structures to detect regressions via baseline comparisons.
  • Snapshot Testing - A feature to record the serialized state of a value to a file and compare it against future executions.
  • Dependency Mocking - Implements mechanisms for replacing module dependencies and system timers with controlled substitutes to isolate code.
  • Test Execution and Orchestration - Manages the full lifecycle, execution, and reporting of automated test suites based on assertions.
  • Assertion and Validation Utilities - Ships a comprehensive set of expectation assertions and equality logic for test validation.
  • Test Execution Runners - Includes a powerful execution engine that manages the discovery, parallelization, and reporting of test suites.
  • Worker Process Management - Distributes test suites across multiple isolated OS-level worker processes to maximize CPU utilization.
  • Syntax Transformers - Integrates a transformation pipeline to transpile non-standard JavaScript and TypeScript before test execution.
  • Reactive Watch Modes - Features an interactive watch mode that monitors the file system and automatically re-runs relevant tests.
  • Dependency Graph Analyzers - Analyzes file relationships to determine and run only the specific tests affected by modified source code.
  • Execution Policies - Offers global configuration settings for timeouts, environment options, and transformation rules.
  • Test-Driven Development Workflow - Supports a TDD workflow through an interactive watch mode that provides immediate feedback during the Red-Green-Refactor cycle.
  • Memory Leak Detection - Includes a utility for analyzing heap snapshots to identify and resolve memory leaks in the application.
  • Test Configuration - Provides a system for defining project-specific settings through custom runners and type-safe configuration files.
  • Test Reporters - Ships mechanisms for formatting and exporting test execution results into standard formats for CI/CD integration.
  • Time Manipulation - Provides virtual clock manipulation to synchronously trigger asynchronous callbacks and simulate time passage.
  • Test Coverage Collections - Gathers execution data across various file formats to identify untested sections of the codebase.
  • Parallel Test Execution - Executes test suites across multiple isolated worker processes to maximize CPU utilization and reduce completion time.
  • Regression Testing Suites - Offers comprehensive regression testing capabilities, including the ability to detect unexpected changes in functionality.
  • Timer Mocks - Provides tools to override native timers and simulate time-dependent logic.
  • Change-Based Test Selection - Allows running only the tests affected by changes in specific files or since a version control revision.
  • Test Sharding - Supports test sharding to distribute large test suites across multiple machines for CI stability and speed.
  • Test Suite Filters - Implements pattern-based inclusion and exclusion of specific files and directories from the test suite.
  • Global Test Lifecycle Hooks - Provides global lifecycle hooks that execute specifically before all tests start and after they complete.
  • Testing - Comprehensive JavaScript testing framework.
  • Testing Utilities - Comprehensive JavaScript testing framework.

Star 历史

jestjs/jest 的 Star 历史图表jestjs/jest 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Jest 的开源替代方案

相似的开源项目,按与 Jest 的功能重合度排序。
  • vitest-dev/vitestvitest-dev 的头像

    vitest-dev/vitest

    15,970在 GitHub 上查看↗

    Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an integrated environment that supports unit, integration, and browser-based testing, allowing developers to execute test suites natively without requiring separate build steps or complex configuration. The project distinguishes itself through a highly optimized execution model that leverages worker-thread isolation and on-demand module transformation to provide rapid feedback. It includes a comprehensive suite of mocking and spying utilities that allow for the interception of depen

    TypeScripttesttesting-toolsvite
    在 GitHub 上查看↗15,970
  • mochajs/mochamochajs 的头像

    mochajs/mocha

    22,967在 GitHub 上查看↗

    Mocha is a JavaScript test runner and framework designed to execute automated test suites across multiple runtimes, including Node.js and web browser environments. It functions as a pluggable testing tool for organizing and validating unit, integration, and functional tests. The project distinguishes itself through a plugin-based extension interface that allows for custom functionality and reporting. It supports a multi-runtime approach, enabling the same test suite to run in different JavaScript environments, and includes a watch mode that monitors the filesystem to trigger automatic test re

    JavaScriptbddbrowserjavascript
    在 GitHub 上查看↗22,967
  • onsi/ginkgoonsi 的头像

    onsi/ginkgo

    9,014在 GitHub 上查看↗

    Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a domain-specific language for writing human-readable specifications, organizing tests into hierarchical containers and subjects to describe system behavior. The project distinguishes itself through advanced execution control and observability, featuring a test runner capable of parallel distribution, sharding, and randomized execution order to detect flaky tests. It includes specialized diagnostic tools for goroutine leak detection, hanging spec monitoring, and failure state debu

    Go
    在 GitHub 上查看↗9,014
  • avajs/avaavajs 的头像

    avajs/ava

    20,849在 GitHub 上查看↗

    Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and isolation. It serves as a concurrent test executor that runs test files in parallel across multiple processes to reduce total runtime and prevent state leakage between suites. The project features a built-in snapshot testing framework that saves large data structures to disk and compares subsequent executions to detect regressions via diffs. It is also compatible with the Test Anything Protocol, allowing it to export results for use with external reporting tools. Its capability

    JavaScriptassertasyncasync-functions
    在 GitHub 上查看↗20,849
查看 Jest 的所有 30 个替代方案→

常见问题解答

jestjs/jest 是做什么的?

Jest is a JavaScript testing framework designed for writing and running automated test suites to verify the correctness of JavaScript and TypeScript code. It functions as a comprehensive toolset that integrates a test runner, a mocking and spying library, a snapshot testing tool, and a code coverage tool.

jestjs/jest 的主要功能有哪些?

jestjs/jest 的主要功能包括:JavaScript Application Testing, Code Coverage, Testing Frameworks, Build Tool Integrations, Module Resolvers, Test Environment Isolation, Code Coverage Tools, Function Call Tracking。

jestjs/jest 有哪些开源替代品?

jestjs/jest 的开源替代品包括: vitest-dev/vitest — Vitest is a high-performance testing framework designed for JavaScript and TypeScript applications. It provides an… mochajs/mocha — Mocha is a JavaScript test runner and framework designed to execute automated test suites across multiple runtimes,… onsi/ginkgo — Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a… avajs/ava — Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and… microsoft/playwright — Playwright is a comprehensive browser automation framework designed for end-to-end testing and web workflow… mobile-dev-inc/maestro — Maestro is a declarative mobile and web UI automation framework designed for end-to-end testing. It operates by…