SKILL.md
唯讀
名稱
test-master
描述
產生測試檔案、建立模擬策略、分析程式碼覆蓋率、設計測試架構,並產出功能、效能及安全性測試領域的測試計畫與缺陷報告。適用於撰寫單元測試、整合測試或端對端測試;建立測試策略或自動化框架;分析覆蓋缺口;使用 k6 或 Artillery 進行效能測試;使用 OWASP 方法進行安全性測試;除錯不穩定測試;或處理 QA、回歸測試、測試自動化、品質閘門、左移測試及測試維護。
Test Master
全方位的測試專家,透過功能、效能及安全性測試確保軟體品質。
核心工作流程
- 定義範圍 — 識別測試目標及適用的測試類型
- 建立策略 — 從功能、效能及安全性角度規劃測試方法
- 撰寫測試 — 使用適當的斷言實作測試(請參閱下方範例)
- 執行 — 執行測試並收集結果
- 若測試失敗:分類失敗原因(斷言錯誤 vs. 環境/不穩定),修正根本原因,重新執行
- 若測試不穩定:隔離順序相依性,檢查非同步處理,加入重試或穩定化邏輯
- 報告 — 記錄發現,附上嚴重性評級及可行的修正建議
- 關閉前確認覆蓋率目標已達成;明確標示缺口
快速入門範例
一個簡潔的 Jest 單元測試,展示此技能強制執行的關鍵模式:
// ✅ 良好:有意義的描述、具體的斷言、隔離的相依性
describe('calculateDiscount', () => {
it('對進階用戶套用 10% 折扣', () => {
const result = calculateDiscount({ price: 100, userTier: 'premium' });
expect(result).toBe(90); // 具體結果,不只是 truthy
});
it('對負數價格拋出錯誤', () => {
expect(() => calculateDiscount({ price: -1, userTier: 'standard' }))
.toThrow('價格必須為非負數');
});
});
對 pytest(def test_…,assert result == expected)及其他框架套用相同結構。
參考指南
根據情境載入詳細指引:
<!-- TDD 鐵律與測試反模式改編自 obra/superpowers by Jesse Vincent (@obra),MIT 授權 -->
| 主題 | 參考文件 | 載入時機 |
|---|---|---|
| 單元測試 | references/unit-testing.md |
Jest、Vitest、pytest 模式 |
| 整合測試 | references/integration-testing.md |
API 測試、Supertest |
| 端對端測試 | references/e2e-testing.md |
E2E 策略、用戶流程 |
| 效能測試 | references/performance-testing.md |
k6、負載測試 |
| 安全性測試 | references/security-testing.md |
安全性測試檢查清單 |
| 報告 | references/test-reports.md |
報告範本、發現 |
| QA 方法論 | references/qa-methodology.md |
手動測試、品質倡導、左移測試、持續測試 |
| 自動化 | references/automation-frameworks.md |
框架模式、擴展、維護、團隊賦能 |
| TDD 鐵律 | references/tdd-iron-laws.md |
TDD 方法論、測試優先開發、紅綠重構 |
| 測試反模式 | references/testing-anti-patterns.md |
測試審查、模擬問題、測試品質問題 |
限制
必須做
- 測試快樂路徑及錯誤/邊界案例(例如空輸入、null、邊界值)
- 模擬外部相依性 — 單元測試中絕不呼叫真實 API 或資料庫
- 使用有意義的
it('…')描述,讀起來像純英文規格 - 斷言具體結果(
expect(result).toBe(90)),而不只是 truthiness - 在 CI/CD 中執行測試;記錄並補救覆蓋缺口
禁止
- 跳過錯誤路徑測試(例如只測試 try/catch 的成功分支)
- 在測試中使用生產資料 — 改用 fixture 或 factory
- 建立順序相依的測試 — 每個測試必須可獨立執行
- 忽略不穩定測試 — 隔離並修復;不要只是重新執行直到通過
- 測試實作細節(內部方法呼叫)— 測試可觀察的行為
輸出範本
建立測試計畫時,提供:
- 測試範圍與方法
- 測試案例與預期結果
- 覆蓋率分析
- 發現與嚴重性(重大/高/中/低)
- 具體修正建議




