LINEで個別相談
プログラミング 2026-04-08

Jest(ジェスト)

MetaがReact向けに開発したJavaScript/TypeScriptのテストフレームワーク。ゼロ設定で動作・スナップショットテスト・モック機能を標準搭載し、フロントエンドテストのデファクトスタンダード。

Jestとは?

Jestは、Metaが開発したJavaScript/TypeScript向けのテストフレームワークです。ゼロ設定で即座に使い始められ、スナップショットテスト・モック機能・コードカバレッジ計測を標準搭載しています。ReactはもちろんNode.jsのバックエンドテストにも広く使われます。

主な機能

機能説明
テストランナーテストファイルを自動発見・並列実行
アサーションexpect().toBe()等の直感的なAPI
モック関数・モジュール・タイマーのモック化
スナップショットUIコンポーネントの出力を記録・比較
コードカバレッジテストがカバーしているコードの割合を測定

基本的なテストの書き方

// sum.js
export const sum = (a, b) => a + b;

// sum.test.js
import { sum } from './sum';

describe('sum関数', () => {
  test('1 + 2 は 3 になる', () => {
    expect(sum(1, 2)).toBe(3);
  });

  test('負の数も扱える', () => {
    expect(sum(-1, -2)).toBe(-3);
  });
});

よく使うマッチャー

expect(value).toBe(3)           // 厳密一致
expect(value).toEqual({ a: 1 }) // オブジェクトの深い比較
expect(value).toBeTruthy()      // truthy値
expect(fn).toHaveBeenCalled()   // 関数が呼ばれたか
expect(value).toMatchSnapshot() // スナップショット一致

まとめ

Jestはフロントエンドテストのデファクトスタンダードです。TypeScriptプロジェクトではts-jestまたは@swc/jestと組み合わせて使います。テストを書く習慣はバグ発見コストを劇的に下げます。

関連する用語 (プログラミング)

全33件を見る

ヘッドレスCMS

表示用フロントエンド(ヘッド)を持たず、コンテンツ管理とAPIによるデータ提供に特化したCMS。Next.js・Astro等の任意のフロントエンドと組み合わせてJAMstack構成を実現する。

詳しく読む

WebAssembly(Wasm)

ブラウザ上でネイティブに近い速度で実行できるバイナリ命令形式。C・C++・Rustなどのコードをブラウザで動かすことができ、ゲーム・動画編集・CADなど計算負荷の高いWebアプリに使われる。

詳しく読む

Web Components

ブラウザネイティブの技術でカプセル化された再利用可能なUIコンポーネントを作成する仕様。Custom Elements・Shadow DOM・HTML Templatesの3つの技術で構成され、フレームワーク非依存で動作する。

詳しく読む

SSG(静的サイトジェネレーター)

ビルド時にすべてのページをHTMLとして事前生成する手法。サーバーが不要なため高速・安全・低コストで、ブログ・ドキュメントサイト・ランディングページに最適。

詳しく読む

モノレポ(Monorepo)

複数のプロジェクトやパッケージを1つのGitリポジトリで管理する手法。コードの共有・一貫したCI/CD・依存関係の統一が容易になる。Turborepo・Nx・Yarnワークスペースで実装される。

詳しく読む

IT用語: 型安全性(Type Safety)とは|TypeScriptが防ぐバグの種類

コンパイル時に型の不一致を検出する「型安全性」の概念と、JavaScriptからTypeScriptへの移行がなぜ有効なのかを解説。

詳しく読む

Sponsored Link

バグ・要望を報告する