mcpField
J
jest

jest

github.com/christopher-bussテスト・品質872 回インストール4 週間前に更新
リポジトリ

jest について

jest は、Roblox 向けの Jest の Luau 移植版である Jest Roblox のスキルリファレンスです。適応された API と JavaScript 版 Jest との違いを説明し、テスト、モック、スナップショット、ベンチマークを扱います。

主な機能

  1. 01Luau 固有の Jest の差異を解説
  2. 02テスト構造とマッチャーを紹介
  3. 03非同期テストとスナップショットを記載
  4. 04タイマーとモジュールのモックを説明
  5. 05ベンチマークのガイドを収録

活用シーン

  1. 01Roblox Luau テストの作成
  2. 02Jest の例を Luau に適応
  3. 03モジュールとタイマーのモック
  4. 04スナップショットテストの設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/christopher-buss/skills --skill jest

インストール後、Claude Code で/jestを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

GENERATION.md
references/
advanced-benchmarking.md
core-asymmetric-matchers.md
core-configuration.md
core-deviations.md
core-matchers.md
core-mocking.md
core-test-structure.md
feature-async-testing.md
feature-custom-matchers.md
feature-global-mocks.md
feature-jest-extended.md
feature-module-mocking.md
feature-snapshot-testing.md
feature-test-filtering.md
feature-timer-mocks.md

詳細

Jest Roblox v3.x を基に作成。生成日:2026-02-07。

Jest Roblox は、Roblox プラットフォーム向けの Jest の Luau 移植版です。上流の Jest API に忠実に従っていますが、Luau 言語の制約により、重大な相違点があります。

JS Jest との重大な相違点:

  • 予約語のため、.not ではなく .never を使用します
  • jest.fn() は2つの値(モックオブジェクトと転送関数)を返します
  • Luau では 0、""、{} は真値です(偽値は false と nil のみです)
  • すべてのグローバル(describe、expect、jest など)は明示的にインポートする必要があります
  • .each はタグ付きテンプレートリテラルではなく、テーブル構文を使用します
  • カスタムマッチャーは、最初のパラメーターとして self を受け取ります

このコードベースで作業する際は、まず core-deviations をお読みください。

コアリファレンス

トピック説明リファレンス
相違点JS Jest との Luau/Roblox におけるすべての相違点core-deviations
テスト構成describe、test/it、フック、.each、.only/.skipcore-test-structure
マッチャーtoBe、toEqual、toContain、toThrow、モックマッチャーcore-matchers
非対称マッチャーexpect.anything/any/nothing/callable、.resolves/.rejectscore-asymmetric-matchers
モックjest.fn()、spyOn、mock.calls、戻り値core-mocking
設定jest.config.lua、runCLI、レポーター、オプションcore-configuration

機能

テストパターン
トピック説明リファレンス
非同期テストPromise、done コールバック、.resolves/.rejectsfeature-async-testing
カスタムマッチャーexpect.extend()、self パラメーター、isNeverfeature-custom-matchers
スナップショットテストtoMatchSnapshot、プロパティマッチャー、シリアライザーfeature-snapshot-testing
テストのフィルタリングtestMatch、testPathPattern、testNamePatternfeature-test-filtering
モック
トピック説明リファレンス
タイマーモックuseFakeTimers、Roblox タイマー、engineFrameTimefeature-timer-mocks
グローバルモックjest.globalEnv、グローバルの spyOn、ライブラリのモックfeature-global-mocks
モジュールのモックjest.mock()、isolateModules、resetModulesfeature-module-mocking
拡張マッチャー
トピック説明リファレンス
Jest Extendedコアマッチャーでは表現力が足りない場合に使用します。厳密な真偽値、範囲、メンバーシップ、エントリー、呼び出し順、副作用に対応しますfeature-jest-extended
高度な機能
トピック説明リファレンス
ベンチマークbenchmark()、Reporter、Profiler、CustomReportersadvanced-benchmarking

コメント