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件を見るIT用語: 再帰処理(Recursion)とは|関数が自分自身を呼び出す仕組み
再帰処理の概念・ベースケースの重要性・階乗計算やツリー探索での活用例を解説。
TypeScript (TS)
JavaScriptの弱点(エラーの起きやすさ)を克服するためにMicrosoftが開発した、「型(ルール)」を持つ進化版言語。
Rust (ラスト)
「処理の速さ」と「メモリの安全性(バグの出にくさ)」を両立させた、世界で最もプログラマーに愛されている次世代言語。
IT用語: 依存性の注入(DI)とは|テストしやすいコードを書く設計原則
クラスが依存するオブジェクトを外部から渡す「依存性の注入(Dependency Injection)」の概念とテスタビリティへの効果を解説。
IT用語: リファクタリングとは|外から見た動作を変えずに内部を改善する
コードの外部動作を保ちながら内部構造を整理するリファクタリングの目的・手法・タイミングを解説。
IT用語: 型安全性(Type Safety)とは|TypeScriptが防ぐバグの種類
コンパイル時に型の不一致を検出する「型安全性」の概念と、JavaScriptからTypeScriptへの移行がなぜ有効なのかを解説。