qa-test-planner

qa-test-planner

熱門

為 QA 工程師產生全面的測試計畫、手動測試案例、回歸測試套件和錯誤報告。包含 Figma MCP 整合以進行設計驗證。

2208星標
212分支
更新於 2026/3/5
SKILL.md
唯讀
名稱
qa-test-planner
描述

為 QA 工程師產生全面的測試計畫、手動測試案例、回歸測試套件和錯誤報告。包含 Figma MCP 整合以進行設計驗證。

QA Test Planner

一個專為 QA 工程師設計的全面技能,用於建立測試計畫、產生手動測試案例、建置回歸測試套件、針對 Figma 進行設計驗證,以及有效記錄錯誤。

啟用方式: 此技能僅在明確呼叫名稱時觸發(例如 /qa-test-plannerqa-test-planneruse the skill qa-test-planner)。


快速開始

建立測試計畫:

"為使用者驗證功能建立測試計畫"

產生測試案例:

"為結帳流程產生手動測試案例"

建置回歸套件:

"為付款模組建置回歸測試套件"

針對 Figma 驗證:

"將登入頁面與 [URL] 的 Figma 設計進行比對"

建立錯誤報告:

"為表單驗證問題建立錯誤報告"

快速參考

任務 產出內容 時間
測試計畫 策略、範圍、時程、風險 10-15 分鐘
測試案例 逐步說明、預期結果 每個 5-10 分鐘
回歸套件 冒煙測試、關鍵路徑、執行順序 15-20 分鐘
Figma 驗證 設計與實作比對、差異清單 10-15 分鐘
錯誤報告 可重現步驟、環境、證據 5 分鐘

運作方式

您的請求
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ 1. 分析                                              │
│    • 解析功能/需求                                   │
│    • 識別所需測試類型                                 │
│    • 決定範圍與優先順序                               │
├─────────────────────────────────────────────────────┤
│ 2. 產生                                              │
│    • 建立結構化交付物                                 │
│    • 套用範本與最佳實務                               │
│    • 包含邊界案例與變化                               │
├─────────────────────────────────────────────────────┤
│ 3. 驗證                                              │
│    • 檢查完整性                                       │
│    • 驗證可追溯性                                     │
│    • 確保步驟可執行                                   │
└─────────────────────────────────────────────────────┘
    │
    ▼
QA 交付物就緒

指令

互動式腳本

腳本 用途 使用方式
./scripts/generate_test_cases.sh 互動式建立測試案例 逐步提示
./scripts/create_bug_report.sh 產生錯誤報告 引導式輸入收集

自然語言

請求 輸出
"為 {feature} 建立測試計畫" 完整的測試計畫文件
"為 {feature} 產生 {N} 個測試案例" 附步驟的編號測試案例
"建置冒煙測試套件" 關鍵路徑測試
"與 {URL} 的 Figma 設計比對" 視覺驗證檢查清單
"記錄錯誤:{description}" 結構化錯誤報告

核心交付物

1. 測試計畫

  • 測試範圍與目標
  • 測試方法與策略
  • 環境需求
  • 進入/退出條件
  • 風險評估
  • 時程與里程碑

2. 手動測試案例

  • 逐步說明
  • 預期結果 vs 實際結果
  • 前置條件與設定
  • 測試資料需求
  • 優先級與嚴重性

3. 回歸測試套件

  • 冒煙測試(15-30 分鐘)
  • 完整回歸(2-4 小時)
  • 目標回歸(30-60 分鐘)
  • 執行順序與相依性

4. Figma 驗證

  • 逐元件比對
  • 間距與字型檢查
  • 顏色與視覺一致性
  • 互動狀態驗證

5. 錯誤報告

  • 清晰的重現步驟
  • 環境詳細資訊
  • 證據(截圖、日誌)
  • 嚴重性與優先級

反模式

避免 原因 建議做法
模糊的測試步驟 無法重現 具體動作 + 預期結果
缺少前置條件 測試意外失敗 記錄所有設定需求
無測試資料 測試人員受阻 提供範例資料或產生方式
通用的錯誤標題 難以追蹤 具體:「[功能] 在 [動作] 時發生問題」
忽略邊界案例 遺漏關鍵錯誤 包含邊界值、空值

驗證檢查清單

測試計畫:

  • [ ] 範圍明確定義(包含/排除)
  • [ ] 進入/退出條件已指定
  • [ ] 風險已識別並有緩解措施
  • [ ] 時程合理

測試案例:

  • [ ] 每個步驟都有預期結果
  • [ ] 前置條件已記錄
  • [ ] 測試資料可用
  • [ ] 已指派優先級

錯誤報告:

  • [ ] 可重現步驟
  • [ ] 環境已記錄
  • [ ] 附上截圖/證據
  • [ ] 已設定嚴重性/優先級

參考資料


<details>
<summary><strong>深入探討:測試案例結構</strong></summary>

標準測試案例格式

## TC-001:[測試案例標題]

**優先級:** 高 | 中 | 低
**類型:** 功能 | UI | 整合 | 回歸
**狀態:** 未執行 | 通過 | 失敗 | 受阻

### 目標
[我們要測試什麼以及為什麼]

### 前置條件
- [設定需求 1]
- [設定需求 2]
- [所需測試資料]

### 測試步驟
1. [執行動作]
   **預期結果:** [應該發生什麼]

2. [執行動作]
   **預期結果:** [應該發生什麼]

3. [執行動作]
   **預期結果:** [應該發生什麼]

### 測試資料
- 輸入:[測試資料值]
- 使用者:[測試帳號詳細資訊]
- 設定:[環境設定]

### 後置條件
- [測試後的系統狀態]
- [需要清理的項目]

### 備註
- [需考慮的邊界案例]
- [相關測試案例]
- [已知問題]

測試類型

類型 重點 範例
功能 業務邏輯 使用有效憑證登入
UI/視覺 外觀、版面 按鈕符合 Figma 設計
整合 元件互動 API 回傳資料給前端
回歸 既有功能 先前功能仍正常運作
效能 速度、負載處理 頁面在 3 秒內載入
安全 漏洞 防止 SQL 注入

</details>

<details>
<summary><strong>深入探討:測試計畫範本</strong></summary>

測試計畫結構

# 測試計畫:[功能/版本名稱]

## 執行摘要
- 受測功能/產品
- 測試目標
- 主要風險
- 時程概覽

## 測試範圍

**包含範圍:**
- 待測功能
- 測試類型(功能、UI、效能)
- 平台與環境
- 使用者流程與情境

**不包含範圍:**
- 不測試的功能
- 已知限制
- 第三方整合(如適用)

## 測試策略

**測試類型:**
- 手動測試
- 探索性測試
- 回歸測試
- 整合測試
- 使用者驗收測試

**測試方法:**
- 黑箱測試
- 正向與負向測試
- 邊界值分析
- 等價類別分割

## 測試環境
- 作業系統
- 瀏覽器與版本
- 裝置(手機、平板、桌機)
- 測試資料需求
- 後端/API 環境

## 進入條件
- [ ] 需求已文件化
- [ ] 設計已定稿
- [ ] 測試環境就緒
- [ ] 測試資料已準備
- [ ] 建置已部署

## 退出條件
- [ ] 所有高優先級測試案例已執行
- [ ] 測試案例通過率達 90% 以上
- [ ] 所有重大錯誤已修復
- [ ] 無未關閉的高嚴重性錯誤
- [ ] 回歸套件已通過

## 風險評估

| 風險 | 機率 | 影響 | 緩解措施 |
|------|------|------|----------|
| [風險 1] | 高/中/低 | 高/中/低 | [緩解措施] |

## 測試交付物
- 測試計畫文件
- 測試案例
- 測試執行報告
- 錯誤報告
- 測試總結報告

</details>

<details>
<summary><strong>深入探討:錯誤報告</strong></summary>

錯誤報告範本

# BUG-[ID]:[清晰、具體的標題]

**嚴重性:** 重大 | 高 | 中 | 低
**優先級:** P0 | P1 | P2 | P3
**類型:** 功能 | UI | 效能 | 安全
**狀態:** 開啟 | 處理中 | 已修復 | 已關閉

## 環境
- **作業系統:** [Windows 11, macOS 14 等]
- **瀏覽器:** [Chrome 120, Firefox 121 等]
- **裝置:** [桌機, iPhone 15 等]
- **建置:** [版本/提交]
- **URL:** [錯誤發生的頁面]

## 描述
[清晰、簡潔的問題描述]

## 重現步驟
1. [具體步驟]
2. [具體步驟]
3. [具體步驟]

## 預期行為
[應該發生什麼]

## 實際行為
[實際發生什麼]

## 視覺證據
- 截圖:[已附上]
- 影片:[連結(如適用)]
- 主控台錯誤:[貼上錯誤]

## 影響
- **使用者影響:** [受影響的使用者數量]
- **頻率:** [總是、有時、很少]
- **替代方案:** [如果有的話]

## 其他資訊
- 相關功能:[功能/工單]
- 是否為回歸:[是/否]
- Figma 設計:[如果是 UI 錯誤,提供連結]

嚴重性定義

等級 條件 範例
重大 (P0) 系統當機、資料遺失、安全問題 付款失敗、登入失效
高 (P1) 主要功能失效,無替代方案 搜尋無法使用
中 (P2) 功能部分失效,有替代方案 篩選缺少一個選項
低 (P3) 外觀問題、罕見邊界案例 錯字、輕微對齊問題

</details>

<details>
<summary><strong>深入探討:Figma MCP 整合</strong></summary>

設計驗證流程

前置條件:

  • Figma MCP 伺服器已設定
  • 可存取 Figma 設計檔案
  • 元件/頁面的 Figma URL

流程:

  1. 從 Figma 取得設計規格
"從 Figma 檔案 [URL] 取得按鈕規格"

回應包含:
- 尺寸(寬度、高度)
- 顏色(背景、文字、邊框)
- 字型(字體、大小、粗細)
- 間距(內距、外距)
- 邊框圓角
- 狀態(預設、懸停、啟用、停用)
  1. 比對實作
TC: 主要按鈕視覺驗證
1. 在瀏覽器開發者工具中檢查主要按鈕
2. 與 Figma 規格比對:
   - 尺寸:120x40px
   - 邊框圓角:8px
   - 背景顏色:#0066FF
   - 字型:16px Medium #FFFFFF
3. 記錄差異
  1. 若不符則建立錯誤
BUG: 主要按鈕顏色與設計不符
嚴重性:中
預期 (Figma):#0066FF
實際 (實作):#0052CC
截圖:[已附上]
Figma 連結:[特定元件]

驗證項目

元素 檢查內容 工具
顏色 Hex 值是否完全一致 瀏覽器顏色選取器
間距 內距/外距 px 值 DevTools 計算樣式
字型 字體、大小、粗細 DevTools 字型面板
版面 寬度、高度、位置 DevTools 盒模型
狀態 懸停、啟用、焦點 手動互動
響應式 斷點行為 DevTools 裝置模式

範例查詢

"從 Figma 設計 [URL] 取得按鈕規格"
"比對導覽選單實作與 Figma 設計"
"從 Figma 提取儀表板版面的間距值"
"列出 Figma 設計系統中使用的所有顏色代碼"

</details>

<details>
<summary><strong>深入探討:回歸測試</strong></summary>

套件結構

套件類型 時間 頻率 涵蓋範圍
冒煙測試 15-30 分鐘 每日 僅關鍵路徑
目標回歸 30-60 分鐘 每次變更 受影響區域
完整回歸 2-4 小時 每週/版本 全面性
理智測試 10-15 分鐘 熱修復後 快速驗證

建置回歸套件

步驟 1:識別關鍵路徑

  • 使用者不能沒有的功能是什麼?
  • 哪些功能產生營收?
  • 哪些處理敏感資料?
  • 哪些最常被使用?

步驟 2:優先排序測試案例

優先級 描述 必須執行
P0 業務關鍵、安全 總是
P1 主要功能、常見流程 每週以上
P2 次要功能、邊界案例 版本發布

步驟 3:執行順序

  1. 先執行冒煙測試 - 若失敗則停止並修復建置
  2. 接著執行 P0 測試 - 必須通過才能繼續
  3. 然後 P1 再 P2 - 追蹤所有失敗
  4. 探索性測試 - 發現非預期問題

通過/失敗條件

通過:

  • 所有 P0 測試通過
  • 90% 以上 P1 測試通過
  • 無未關閉的重大錯誤

失敗(阻擋發布):

  • 任何 P0 測試失敗
  • 發現重大錯誤
  • 安全漏洞
  • 資料遺失情境

有條件:

  • P1 失敗但有替代方案
  • 已知問題已記錄
  • 修復計畫已就緒

</details>

<details>
<summary><strong>深入探討:測試執行追蹤</strong></summary>

測試執行報告範本

# 測試執行:[版本號]

**日期:** 2024-01-15
**建置:** v2.5.0-rc1
**測試人員:** [姓名]
**環境:** 暫存環境

## 摘要
- 測試案例總數:150
- 已執行:145
- 通過:130
- 失敗:10
- 受阻:5
- 未執行:5
- 通過率:90%

## 依優先級分類的測試案例

| 優先級 | 總數 | 通過 | 失敗 | 受阻 |
|--------|------|------|------|------|
| P0 (重大) | 25 | 23 | 2 | 0 |
| P1 (高) | 50 | 45 | 3 | 2 |
| P2 (中) | 50 | 45 | 3 | 2 |
| P3 (低) | 25 | 17 | 2 | 1 |

## 重大失敗
- TC-045:付款處理失敗
  - 錯誤:BUG-234
  - 狀態:開啟

## 受阻測試
- TC-112:儀表板小工具(API 端點關閉)

## 風險
- 2 個重大錯誤阻擋發布
- 付款整合需要關注

## 下一步
- 在 BUG-234 修復後重新測試
- 完成剩餘 5 個測試案例
- 在簽核前執行完整回歸

涵蓋率追蹤

## 涵蓋率矩陣

| 功能 | 需求數 | 測試案例數 | 狀態 | 缺口 |
|------|--------|------------|------|------|
| 登入 | 8 | 12 | 完成 | 無 |
| 結帳 | 15 | 10 | 部分 | 付款錯誤 |
| 儀表板 | 12 | 15 | 完成 | 無 |

</details>

<details>
<summary><strong>QA 流程工作流程</strong></summary>

階段 1:規劃

  • [ ] 審查需求與設計
  • [ ] 建立測試計畫
  • [ ] 識別測試情境
  • [ ] 估算工作量與時程
  • [ ] 設定測試環境

階段 2:測試設計

  • [ ] 撰寫測試案例
  • [ ] 與團隊審查測試案例
  • [ ] 準備測試資料
  • [ ] 建置回歸套件
  • [ ] 取得 Figma 設計存取權

階段 3:執行

  • [ ] 執行測試案例
  • [ ] 以清晰步驟記錄錯誤
  • [ ] 針對 Figma 驗證(UI 測試)
  • [ ] 追蹤測試進度
  • [ ] 溝通阻礙

階段 4:報告

  • [ ] 彙整測試結果
  • [ ] 分析涵蓋率
  • [ ] 記錄風險
  • [ ] 提供執行/不執行建議
  • [ ] 歸檔測試產出物

</details>

<details>
<summary><strong>最佳實務</strong></summary>

測試案例撰寫

應做:

  • 具體且無歧義
  • 每個步驟包含預期結果
  • 每個測試案例測試一件事
  • 使用一致的命名慣例
  • 保持測試案例可維護

不應做:

  • 假設知識
  • 測試案例過長
  • 跳過前置條件
  • 忘記邊界案例
  • 預期結果模糊

錯誤報告

應做:

  • 提供清晰的重現步驟
  • 包含截圖/影片
  • 指定確切的環境詳細資訊
  • 描述對使用者的影響
  • UI 錯誤連結 Figma

不應做:

  • 無重現步驟就報告
  • 使用模糊描述
  • 跳過環境詳細資訊
  • 忘記指派優先級
  • 重複現有錯誤

回歸測試

應做:

  • 盡可能自動化重複測試
  • 定期維護回歸套件
  • 優先處理關鍵路徑
  • 頻繁執行冒煙測試
  • 每次發布後更新套件

不應做:

  • 發布前跳過回歸
  • 讓套件過時
  • 每次都測試所有項目
  • 忽略失敗的回歸測試

</details>


範例

<details>
<summary><strong>範例:登入流程測試案例</strong></summary>

## TC-LOGIN-001:有效使用者登入

**優先級:** P0 (重大)
**類型:** 功能
**預計時間:** 2 分鐘

### 目標
驗證使用者可以使用有效憑證成功登入

### 前置條件
- 使用者帳號已存在 (test@example.com / Test123!)
- 使用者尚未登入
- 瀏覽器 Cookie 已清除

### 測試步驟
1. 導覽至 https://app.example.com/login
   **預期結果:** 登入頁面顯示電子郵件與密碼欄位

2. 輸入電子郵件:test@example.com
   **預期結果:** 電子郵件欄位接受輸入

3. 輸入密碼:Test123!
   **預期結果:** 密碼欄位顯示遮罩字元

4. 點擊「登入」按鈕
   **預期結果:**
   - 出現載入指示器
   - 使用者重新導向至 /dashboard
   - 顯示歡迎訊息:「歡迎回來,Test User」
   - 頁首顯示頭像/個人圖片

### 後置條件
- 使用者工作階段已建立
- 驗證 Token 已儲存
- 分析事件已記錄

### 需考慮的邊界案例
- TC-LOGIN-002:無效密碼
- TC-LOGIN-003:不存在的電子郵件
- TC-LOGIN-004:SQL 注入嘗試
- TC-LOGIN-005:非常長的密碼

</details>

<details>
<summary><strong>範例:響應式設計測試案例</strong></summary>

## TC-UI-045:行動版導覽選單

**優先級:** P1 (高)
**類型:** UI/響應式
**裝置:** 行動裝置 (iPhone, Android)

### 目標
驗證導覽選單在行動裝置上正常運作

### 前置條件
- 從行動裝置或響應式模式存取
- 視窗寬度:375px (iPhone SE) 至 428px (iPhone Pro Max)

### 測試步驟
1. 在行動裝置上開啟首頁
   **預期結果:** 漢堡選單圖示可見(右上角)

2. 點擊漢堡選單圖示
   **預期結果:**
   - 選單從右側滑入
   - 內容上方出現遮罩層
   - 關閉 (X) 按鈕可見

3. 點擊選單項目
   **預期結果:** 導覽至區段,選單關閉

4. 與 Figma 行動版設計比對 [連結]
   **預期結果:**
   - 選單寬度:280px
   - 滑入動畫:300ms ease-out
   - 遮罩層透明度:0.5,顏色 #000000
   - 字型大小:16px,行高 24px

### 需測試的斷點
- 375px (iPhone SE)
- 390px (iPhone 14)
- 428px (iPhone 14 Pro Max)
- 360px (Galaxy S21)

</details>


「測試能顯示錯誤的存在,而非不存在。」 - Edsger Dijkstra

「品質不是一種行為,而是一種習慣。」 - Aristotle