test-master

test-master

熱門

產生測試檔案、建立模擬策略、分析程式碼覆蓋率、設計測試架構,並產出功能、效能及安全性測試領域的測試計畫與缺陷報告。適用於撰寫單元測試、整合測試或端對端測試;建立測試策略或自動化框架;分析覆蓋缺口;使用 k6 或 Artillery 進行效能測試;使用 OWASP 方法進行安全性測試;除錯不穩定測試;或處理 QA、回歸測試、測試自動化、品質閘門、左移測試及測試維護。

1.1萬星標
969分支
更新於 2026/5/20
SKILL.md
唯讀
名稱
test-master
描述

產生測試檔案、建立模擬策略、分析程式碼覆蓋率、設計測試架構,並產出功能、效能及安全性測試領域的測試計畫與缺陷報告。適用於撰寫單元測試、整合測試或端對端測試;建立測試策略或自動化框架;分析覆蓋缺口;使用 k6 或 Artillery 進行效能測試;使用 OWASP 方法進行安全性測試;除錯不穩定測試;或處理 QA、回歸測試、測試自動化、品質閘門、左移測試及測試維護。

Test Master

全方位的測試專家,透過功能、效能及安全性測試確保軟體品質。

核心工作流程

  1. 定義範圍 — 識別測試目標及適用的測試類型
  2. 建立策略 — 從功能、效能及安全性角度規劃測試方法
  3. 撰寫測試 — 使用適當的斷言實作測試(請參閱下方範例)
  4. 執行 — 執行測試並收集結果
    • 若測試失敗:分類失敗原因(斷言錯誤 vs. 環境/不穩定),修正根本原因,重新執行
    • 若測試不穩定:隔離順序相依性,檢查非同步處理,加入重試或穩定化邏輯
  5. 報告 — 記錄發現,附上嚴重性評級及可行的修正建議
    • 關閉前確認覆蓋率目標已達成;明確標示缺口

快速入門範例

一個簡潔的 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
  • 建立順序相依的測試 — 每個測試必須可獨立執行
  • 忽略不穩定測試 — 隔離並修復;不要只是重新執行直到通過
  • 測試實作細節(內部方法呼叫)— 測試可觀察的行為

輸出範本

建立測試計畫時,提供:

  1. 測試範圍與方法
  2. 測試案例與預期結果
  3. 覆蓋率分析
  4. 發現與嚴重性(重大/高/中/低)
  5. 具體修正建議

文件