jest-testing
為 Lea 語言儲存庫提供 Jest 測試模式與最佳實踐,涵蓋解釋器、解析器及非同步 TypeScript 程式碼。
簡介
jest-testing 技能是為 Lea 程式語言代碼庫開發者所設計的綜合工具集。它為在 TypeScript 環境中驗證樹狀走訪解釋器 (tree-walk interpreter)、遞迴下降解析器 (recursive descent parser) 以及基於 Promise 的非同步執行流程,提供了標準化的測試模式。此技能旨在協助貢獻者與維護人員,確保核心語言功能、語法實作及執行時期內建函式的可靠性。
-
實作 Arrange-Act-Assert 模式以編寫清晰且易於維護的單元測試。
-
支援驗證複雜的解釋器輸出,包括算術運算評估、內建函式轉換及錯誤處理邏輯。
-
提供解析器驗證模板,確保原始程式碼能正確轉換為預期的抽象語法樹 (AST) 節點,如 PipeExpr 或 ExprStmt。
-
具備針對非同步測試的專屬模式,特別涵蓋了 Lea 中的延遲作業與非同步裝飾器。
-
包含快照測試 (snapshot testing) 支援,以驗證程式碼格式化輸出的連貫性。
-
提供標準的 jest.config.js 設定指南,利用 ts-jest 與 node 環境實現最佳的 TypeScript 整合。
-
當您需要為詞法分析器、解析器或解釋器模組編寫新單元測試以提高代碼覆蓋率時,請使用此技能。
-
應用定義好的模式來模擬內建函式,或使用 Lea 的 Context 系統來模擬依賴注入情境。
-
確保測試彼此隔離,且每個測試僅聚焦於單一斷言,以簡化語言執行時期行為的除錯過程。
-
預期輸入包括原始的 Lea 原始碼字串;預期輸出為驗證後的 AST 結構、運算結果或預期的錯誤訊息。
-
請遵循儲存庫中關於測試的目錄結構標準,特別是針對 tests 資料夾,以確保測試能被正確發現。
倉庫統計
- Star 數
- 4
- Fork 數
- 0
- Open Issue 數
- 30
- 主要語言
- TypeScript
- 預設分支
- main
- 同步狀態
- 閒置
- 最近同步時間
- 2026年5月4日 上午01:18