# Feature catalog — jestjs/jest

> Canonical page: https://codevetter.com/unpack/jest/feature-catalog

# Feature catalog — jestjs/jest

Scanned commit 61050e9323e742539dc2360236671110e37329e6 (2026-10-02). Generated by codevetter codevetter 1.15.0 on 2026-10-02.

Source inspection; upstream code and tests were not executed.

The inspected user surface spans test selection, execution, assertions, mocks, snapshots, coverage, and diagnostic output. Selection can operate on paths, dependency relationships, project names, cached failures, or sequencer shards. Watch mode and declaration collection provide different workflows over the same orchestration machinery. The catalog groups related APIs and options rather than claiming an exhaustive listing of every matcher or flag.
- Test selection supports roots, testMatch, testRegex, ignore patterns, direct paths, related source files, and onlyChanged dependency selection; CLI project selection also supports selectProjects and ignoreProjects. — [packages/jest-core/src/SearchSource.ts#L66-L101](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/SearchSource.ts#L66-L101) [packages/jest-core/src/SearchSource.ts#L270-L304](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/SearchSource.ts#L270-L304) [packages/jest-core/src/cli/index.ts#L80-L98](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/cli/index.ts#L80-L98)
- runJest supports sequencer-based sharding, sorting, and onlyFailures selection; --listTests emits unique selected file paths as text or JSON, optionally to outputFile. — [packages/jest-core/src/runJest.ts#L291-L329](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/runJest.ts#L291-L329)
- --collectTests schedules files with silent output, disabled coverage, and an empty reporter list, then returns declaration trees or JSON; Circus loads setup and test modules before skipping test-body execution. — [packages/jest-core/src/runJest.ts#L334-L366](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/runJest.ts#L334-L366) [packages/jest-circus/src/legacy-code-todo-rewrite/jestAdapter.ts#L80-L107](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-circus/src/legacy-code-todo-rewrite/jestAdapter.ts#L80-L107)
- Watch mode loads built-in and third-party plugins, reacts to Haste file changes, reruns tests, emits completion hooks, and retains failed test results for subsequent selection. — [packages/jest-core/src/watch.ts#L158-L217](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/watch.ts#L158-L217) [packages/jest-core/src/watch.ts#L249-L260](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/watch.ts#L249-L260) [packages/jest-core/src/watch.ts#L284-L335](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/watch.ts#L284-L335)
- expect(actual) constructs ordinary, negated, resolves, and rejects matcher surfaces; expect.extend and addEqualityTesters register custom behavior alongside built-in assertion, spy, and throw matchers. — [packages/expect/src/index.ts#L105-L150](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/expect/src/index.ts#L105-L150) [packages/expect/src/index.ts#L397-L401](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/expect/src/index.ts#L397-L401) [packages/expect/src/index.ts#L458-L464](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/expect/src/index.ts#L458-L464)
- Mock APIs include fn, method/accessor spyOn, replaceProperty, module mock dispatch, and module isolation; clearAllMocks, resetAllMocks, and restoreAllMocks have distinct state-reset operations. — [packages/jest-mock/src/index.ts#L1233-L1242](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-mock/src/index.ts#L1233-L1242) [packages/jest-mock/src/index.ts#L1270-L1288](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-mock/src/index.ts#L1270-L1288) [packages/jest-mock/src/index.ts#L1591-L1598](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-mock/src/index.ts#L1591-L1598) [packages/jest-runtime/src/index.ts#L592-L603](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-runtime/src/index.ts#L592-L603)
- Snapshot APIs support external and inline matching, custom serializers, and custom path resolvers; update modes control additions, replacements, obsolete-key removal, and empty-file deletion. — [packages/jest-snapshot/src/index.ts#L157-L161](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-snapshot/src/index.ts#L157-L161) [packages/jest-snapshot/src/index.ts#L214-L217](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-snapshot/src/index.ts#L214-L217) [packages/jest-snapshot/src/State.ts#L304-L349](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-snapshot/src/State.ts#L304-L349) [packages/jest-snapshot/src/SnapshotResolver.ts#L50-L56](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-snapshot/src/SnapshotResolver.ts#L50-L56)
- Execution supports per-file environment docblocks, setup hooks, globally enabled fake timers, and V8 coverage; output options include default/verbose, agent, GitHub Actions, summary, custom, coverage, notification, and JSON reporting. — [packages/jest-runner/src/runTest.ts#L90-L123](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-runner/src/runTest.ts#L90-L123) [packages/jest-runner/src/runTest.ts#L271-L295](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-runner/src/runTest.ts#L271-L295) [packages/jest-circus/src/legacy-code-todo-rewrite/jestAdapter.ts#L45-L77](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-circus/src/legacy-code-todo-rewrite/jestAdapter.ts#L45-L77) [packages/jest-core/src/TestScheduler.ts#L382-L429](https://github.com/jestjs/jest/blob/61050e9323e742539dc2360236671110e37329e6/packages/jest-core/src/TestScheduler.ts#L382-L429)

Every claim links to its cited files at the pinned commit. Citations identify source evidence; they do not establish runtime correctness. Independent CodeVetter scan — not reviewed by upstream maintainers.

## Public product links

- [CodeVetter](https://codevetter.com/)
- [Download](https://codevetter.com/download)
- [Documentation](https://codevetter.com/docs/)
- [Source](https://github.com/Codevetter/codevetter)
