工程開發
jest-testing avatar

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
在 GitHub 查看