測試報告範本(Test Report)#
參照標準:ISO/IEC/IEEE 29119-3:2021(Test Completion Report)
文件用途:彙整測試執行結果,評估軟體品質,提供上線/不上線的決策依據
適用階段:測試驗證階段(Testing Phase)— Test Completion
📋 章節目錄#
- 文件資訊
- 執行摘要
- 測試範圍
- 測試環境
- 測試執行結果
- 缺陷分析
- 覆蓋率分析
- 風險與未解決項目
- 品質評估與建議
- 附錄
1. 文件資訊#
📝 範本#
| 項目 | 內容 |
|---|
| 文件編號 | TR-{專案代碼}-{迭代/版本}-{序號} |
| 文件名稱 | {系統名稱} 測試報告 |
| 版本 | v{主版本}.{次版本} |
| 測試版本 | {受測軟體版本號} |
| 測試類型 | 單元/整合/系統/UAT/回歸/效能/安全 |
| 測試週期 | {YYYY-MM-DD} ~ {YYYY-MM-DD} |
| 撰寫者 | {QA 負責人} |
| 審核者 | {PM/Tech Lead} |
| 發佈日期 | {YYYY-MM-DD} |
📖 使用說明#
- 每個重要測試里程碑(Sprint 結束、版本發佈前)產出測試報告
- 測試類型依實際執行的測試活動填寫,可為複合型(如「系統 + 效能」)
- 測試版本需明確對應 Git Tag / Build Number,確保可追溯
💡 範例#
| 項目 | 內容 |
|---|
| 文件編號 | TR-HRM-v2.1-001 |
| 系統名稱 | 人力資源管理系統 |
| 測試版本 | v2.1.0-rc.1 (Build #487) |
| 測試類型 | 系統測試 + 回歸測試 + 效能測試 |
| 測試週期 | 2026-05-01 ~ 2026-05-15 |
2. 執行摘要#
📝 範本#
2.1 整體結論#
| 項目 | 結果 |
|---|
| 上線建議 | ✅ 建議上線 / ⚠️ 有條件上線 / ❌ 不建議上線 |
| 品質等級 | 優良 / 合格 / 不合格 |
| 主要風險 | {簡述主要殘餘風險} |
2.2 關鍵指標概覽#
| 指標 | 數值 | 目標 | 達標 |
|---|
| 測試案例通過率 | {%} | ≥ {%} | ✅/❌ |
| 缺陷密度(Defect/KLOC) | {N} | ≤ {N} | ✅/❌ |
| 嚴重缺陷(Critical/High)未解決 | {N} | 0 | ✅/❌ |
| 需求覆蓋率 | {%} | ≥ {%} | ✅/❌ |
| 程式碼覆蓋率 | {%} | ≥ {%} | ✅/❌ |
| 效能指標達標率 | {%} | 100% | ✅/❌ |
📖 使用說明#
- 執行摘要是最重要的章節,決策者可能只看這部分
- 上線建議需有客觀數據支持,非主觀判斷
- 「有條件上線」需明確列出條件(如:特定功能暫不開放、需加監控)
- 關鍵指標的目標值應在測試計畫中事先定義
💡 範例#
2.1 整體結論#
| 項目 | 結果 |
|---|
| 上線建議 | ⚠️ 有條件上線 |
| 品質等級 | 合格 |
| 主要風險 | 2 個 Medium 缺陷待修、大量匯出效能未達標 |
2.2 關鍵指標概覽#
| 指標 | 數值 | 目標 | 達標 |
|---|
| 測試案例通過率 | 96.8% | ≥ 95% | ✅ |
| 缺陷密度 | 2.3/KLOC | ≤ 5/KLOC | ✅ |
| 嚴重缺陷未解決 | 0 | 0 | ✅ |
| 需求覆蓋率 | 98% | ≥ 95% | ✅ |
| 程式碼覆蓋率 | 82% | ≥ 80% | ✅ |
| 效能指標達標率 | 90% | 100% | ❌ |
3. 測試範圍#
📝 範本#
3.1 測試項目(In Scope)#
| 模組/功能 | 測試類型 | 優先級 | 執行狀態 |
|---|
| {模組名稱} | {測試類型} | 高/中/低 | 完成/部分/未執行 |
3.2 排除項目(Out of Scope)#
📖 使用說明#
- 明確列出本次測試涵蓋與不涵蓋的範圍
- 排除原因需合理(如:未修改的模組、下一版本範圍)
- 執行狀態若為「部分」或「未執行」,需在風險章節說明影響
💡 範例#
3.1 測試項目#
| 模組/功能 | 測試類型 | 優先級 | 執行狀態 |
|---|
| 員工資料管理(CRUD) | 系統測試 + 回歸 | 高 | 完成 |
| 薪資計算引擎 | 系統測試 + 回歸 | 高 | 完成 |
| 請假/加班申請流程 | 系統測試 + 回歸 | 高 | 完成 |
| 報表匯出(PDF/Excel) | 系統測試 + 效能 | 中 | 完成 |
| SSO 登入整合 | 整合測試 | 高 | 完成 |
| API 效能(並發) | 效能測試 | 中 | 完成 |
3.2 排除項目#
| 模組/功能 | 排除原因 |
|---|
| 行動 App | v2.2 規劃範圍,本版未開發 |
| 第三方薪轉介接(銀行 API) | 銀行端 UAT 環境未就緒 |
4. 測試環境#
📝 範本#
| 項目 | 規格 |
|---|
| 環境名稱 | {SIT/UAT/Staging/Performance} |
| 作業系統 | {OS 版本} |
| 應用伺服器 | {Server + 版本} |
| 資料庫 | {DB + 版本} |
| 測試資料 | {描述:模擬資料量/來源} |
| 測試工具 | {工具清單} |
| 與正式環境差異 | {列出差異} |
📖 使用說明#
- 測試環境資訊確保結果可重現
- 必須列出與正式環境的差異(差異可能影響結果有效性)
- 效能測試環境應盡量接近正式規格
💡 範例#
| 項目 | 規格 |
|---|
| 環境名稱 | Staging (Azure AKS) |
| 作業系統 | Ubuntu 22.04 (K8s Node) |
| 應用伺服器 | .NET 8 Kestrel + Kong 3.5 |
| 資料庫 | PostgreSQL 16.2 (Azure Database) |
| 測試資料 | 模擬 10,000 員工、3 年歷史資料 |
| 測試工具 | xUnit, Playwright, JMeter 5.6, SonarQube |
| 與正式環境差異 | 節點數 3(正式 6)、資料量為正式 20% |
5. 測試執行結果#
📝 範本#
5.1 測試案例執行統計#
| 狀態 | 數量 | 百分比 |
|---|
| 通過(Pass) | {N} | {%} |
| 失敗(Fail) | {N} | {%} |
| 阻塞(Blocked) | {N} | {%} |
| 未執行(Not Run) | {N} | {%} |
| 總計 | {N} | 100% |
5.2 按模組分佈#
| 模組 | 總案例 | 通過 | 失敗 | 阻塞 | 通過率 |
|---|
| {模組} | {N} | {N} | {N} | {N} | {%} |
5.3 效能測試結果(如適用)#
| 場景 | 指標 | 目標 | 實際 | 達標 |
|---|
| {場景} | {指標} | {目標值} | {實際值} | ✅/❌ |
📖 使用說明#
- 統計數據需與測試管理工具(如 Azure DevOps Test Plan)數據一致
- 失敗案例需逐一追蹤到缺陷 ID
- 阻塞案例需說明阻塞原因(環境問題?依賴未就緒?)
- 效能測試報告重點指標:回應時間、吞吐量、錯誤率
💡 範例#
5.1 測試案例執行統計#
| 狀態 | 數量 | 百分比 |
|---|
| 通過(Pass) | 242 | 96.8% |
| 失敗(Fail) | 5 | 2.0% |
| 阻塞(Blocked) | 2 | 0.8% |
| 未執行(Not Run) | 1 | 0.4% |
| 總計 | 250 | 100% |
5.2 按模組分佈#
| 模組 | 總案例 | 通過 | 失敗 | 阻塞 | 通過率 |
|---|
| 員工資料管理 | 65 | 64 | 1 | 0 | 98.5% |
| 薪資計算 | 80 | 78 | 2 | 0 | 97.5% |
| 請假/加班 | 55 | 54 | 0 | 1 | 98.2% |
| 報表匯出 | 30 | 28 | 2 | 0 | 93.3% |
| SSO 登入 | 20 | 18 | 0 | 1 | 90.0%* |
5.3 效能測試結果#
| 場景 | 指標 | 目標 | 實際 | 達標 |
|---|
| 登入(100 concurrent) | P95 回應時間 | ≤ 500ms | 320ms | ✅ |
| 員工查詢(200 concurrent) | P95 回應時間 | ≤ 1000ms | 780ms | ✅ |
| 薪資計算批次(10,000筆) | 總處理時間 | ≤ 5min | 3.2min | ✅ |
| 報表匯出(5,000筆 Excel) | 回應時間 | ≤ 30s | 45s | ❌ |
| API 持續壓力(1hr, 500 TPS) | 錯誤率 | ≤ 0.1% | 0.05% | ✅ |
6. 缺陷分析#
📝 範本#
6.1 缺陷統計#
| 嚴重度 | 發現 | 已修復 | 未修復 | 已驗證 |
|---|
| Critical | {N} | {N} | {N} | {N} |
| High | {N} | {N} | {N} | {N} |
| Medium | {N} | {N} | {N} | {N} |
| Low | {N} | {N} | {N} | {N} |
| 總計 | {N} | {N} | {N} | {N} |
6.2 缺陷明細(未解決)#
| 缺陷 ID | 嚴重度 | 模組 | 描述 | 狀態 | 處置方式 |
|---|
| {ID} | {等級} | {模組} | {描述} | {狀態} | 下版修復/暫時方案/接受 |
6.3 缺陷趨勢#
📖 使用說明#
- Critical/High 未解決 = 不建議上線(除非有合理的暫時方案)
- 缺陷趨勢圖需呈現「收斂」趨勢(發現率下降、解決追上發現)
- 缺陷明細只列未解決的,已解決的在附錄提供完整清單
- 處置方式需經 PM/Tech Lead 核准
💡 範例#
6.1 缺陷統計#
| 嚴重度 | 發現 | 已修復 | 未修復 | 已驗證 |
|---|
| Critical | 1 | 1 | 0 | 1 |
| High | 3 | 3 | 0 | 3 |
| Medium | 8 | 6 | 2 | 6 |
| Low | 5 | 3 | 2 | 3 |
| 總計 | 17 | 13 | 4 | 13 |
6.2 缺陷明細(未解決)#
| 缺陷 ID | 嚴重度 | 模組 | 描述 | 狀態 | 處置方式 |
|---|
| BUG-142 | Medium | 報表匯出 | Excel 匯出超過 5000 筆時超時 (45s > 30s) | Open | v2.2 修復(分頁匯出) |
| BUG-145 | Medium | 報表匯出 | PDF 頁首日期格式錯誤 | Open | v2.1.1 Hotfix |
| BUG-148 | Low | 員工管理 | 姓名超過 50 字元時 UI 顯示截斷 | Open | v2.2 修復 |
| BUG-150 | Low | 薪資計算 | 計算說明欄位未支援多語系 | Open | v2.2 修復 |
7. 覆蓋率分析#
📝 範本#
7.1 需求覆蓋率#
| 需求類型 | 總需求數 | 已覆蓋 | 未覆蓋 | 覆蓋率 |
|---|
| 功能需求(FR) | {N} | {N} | {N} | {%} |
| 非功能需求(NFR) | {N} | {N} | {N} | {%} |
| 安全需求(SEC) | {N} | {N} | {N} | {%} |
7.2 程式碼覆蓋率#
| 模組 | 行覆蓋率 | 分支覆蓋率 | 方法覆蓋率 |
|---|
| {模組} | {%} | {%} | {%} |
📖 使用說明#
- 需求覆蓋率:確保每個需求至少有一個測試案例覆蓋
- 程式碼覆蓋率:通常由 CI/CD 工具(SonarQube、Istanbul)自動產出
- 目標值:需求覆蓋率 ≥ 95%、行覆蓋率 ≥ 80%、分支覆蓋率 ≥ 70%
- 未覆蓋的需求需說明原因
💡 範例#
7.1 需求覆蓋率#
| 需求類型 | 總需求數 | 已覆蓋 | 未覆蓋 | 覆蓋率 |
|---|
| 功能需求(FR) | 45 | 44 | 1* | 97.8% |
| 非功能需求(NFR) | 12 | 12 | 0 | 100% |
| 安全需求(SEC) | 40 | 38 | 2** | 95% |
*FR-032(行動 App 推播)排除於本版
**SEC-SESS-005、SEC-COMM-004 為建議等級,計畫 v2.2 驗證
7.2 程式碼覆蓋率#
| 模組 | 行覆蓋率 | 分支覆蓋率 | 方法覆蓋率 |
|---|
| HRM.Core | 87% | 75% | 92% |
| HRM.Auth | 91% | 82% | 95% |
| HRM.Payroll | 85% | 78% | 90% |
| HRM.Leave | 83% | 71% | 88% |
| HRM.Report | 74% | 65% | 82% |
| 平均 | 82% | 74% | 89% |
8. 風險與未解決項目#
📝 範本#
8.1 測試風險#
| 風險 ID | 風險描述 | 影響 | 可能性 | 緩解/應對措施 |
|---|
| TR-{xxx} | {風險描述} | 高/中/低 | 高/中/低 | {措施} |
8.2 未解決項目#
| 項目 | 類型 | 影響 | 預計處理時間 |
|---|
| {描述} | 缺陷/環境/需求不明 | {影響範圍} | {時間} |
📖 使用說明#
- 測試風險:因環境限制、時間壓力等導致的測試品質風險
- 未解決項目:測試過程中發現但尚未處理的問題
- 這些風險/項目是上線決策的重要輸入
💡 範例#
8.1 測試風險#
| 風險 ID | 風險描述 | 影響 | 可能性 | 緩解/應對措施 |
|---|
| TR-001 | 效能測試環境僅為正式 20% 規模 | 中 | 中 | 上線後首日加強監控 |
| TR-002 | 銀行 API 整合未測試 | 中 | 低 | 功能暫不開放,v2.2 整合測試 |
| TR-003 | 僅測試 Chrome/Edge,未測 Safari | 低 | 低 | 上線後收集使用者回饋 |
9. 品質評估與建議#
📝 範本#
9.1 品質總評#
| 品質維度 | 評估 | 說明 |
|---|
| 功能正確性 | ✅ 合格 / ❌ 不合格 | {說明} |
| 效能表現 | ✅ 合格 / ❌ 不合格 | {說明} |
| 安全性 | ✅ 合格 / ❌ 不合格 | {說明} |
| 穩定性 | ✅ 合格 / ❌ 不合格 | {說明} |
| 使用性 | ✅ 合格 / ❌ 不合格 | {說明} |
9.2 上線建議#
- 結論:{建議上線 / 有條件上線 / 不建議上線}
- 條件(如為有條件上線):
- {條件 1}
- {條件 2}
9.3 後續建議#
📖 使用說明#
- 品質評估需基於本報告數據得出,而非主觀印象
- 上線條件需具體、可驗證(不能是「盡量修好」)
- 後續建議為下一版本的品質改善方向
💡 範例#
9.1 品質總評#
| 品質維度 | 評估 | 說明 |
|---|
| 功能正確性 | ✅ 合格 | 核心功能通過率 97.5%,無 Critical/High 缺陷 |
| 效能表現 | ⚠️ 部分合格 | 大量匯出場景未達標(45s > 30s 目標) |
| 安全性 | ✅ 合格 | OWASP Top 10 測試通過,無高風險漏洞 |
| 穩定性 | ✅ 合格 | 1 小時壓力測試錯誤率 0.05% |
| 使用性 | ✅ 合格 | UAT 使用者滿意度 4.2/5.0 |
9.2 上線建議#
- 結論:⚠️ 有條件上線
- 條件:
- 報表匯出功能限制單次匯出上限 3,000 筆(UI 提示分批匯出)
- 上線首週加強 APM 監控,設定效能告警閾值
- BUG-145(PDF 日期格式)需在上線後 3 個工作日內 Hotfix
9.3 後續建議#
| 建議事項 | 優先級 | 建議時程 |
|---|
| 報表匯出改為非同步(Background Job) | 高 | v2.2 |
| 增加 Safari/Firefox 瀏覽器自動化測試 | 中 | v2.2 |
| 銀行薪轉 API 整合測試 | 高 | v2.2 |
| 效能測試環境擴增至正式 50% | 中 | Q3 2026 |
10. 附錄#
📝 範本#
10.1 完整缺陷清單#
| 缺陷 ID | 嚴重度 | 模組 | 摘要 | 狀態 | 修復版本 |
|---|
| {ID} | {等級} | {模組} | {摘要} | 已修復/未修復 | {版本} |
10.2 測試案例執行明細#
參見測試管理工具匯出報表:{連結}
10.3 簽核#
| 角色 | 姓名 | 簽核日期 | 簽核結果 |
|---|
| QA Lead | {姓名} | {日期} | ☐ 核准 / ☐ 退回 |
| Tech Lead | {姓名} | {日期} | ☐ 核准 / ☐ 退回 |
| PM | {姓名} | {日期} | ☐ 核准 / ☐ 退回 |
| 產品負責人 | {姓名} | {日期} | ☐ 核准 / ☐ 退回 |
📖 使用說明#
- 完整缺陷清單包含本測試週期所有已解決與未解決的缺陷
- 測試案例執行明細可連結至測試管理工具(避免重複維護)
- 簽核確保所有利害關係人已閱讀並同意報告結論與上線建議
💡 範例#
10.3 簽核#
| 角色 | 姓名 | 簽核日期 | 簽核結果 |
|---|
| QA Lead | 陳品安 | 2026-05-16 | ☑ 核准 |
| Tech Lead | 張架構 | 2026-05-16 | ☑ 核准 |
| PM | 林專案 | 2026-05-17 | ☑ 核准(含條件) |
| 產品負責人 | 王產品 | 2026-05-17 | ☑ 核准(含條件) |
📌 範本使用注意事項
- 本範本依據 ISO/IEC/IEEE 29119-3:2021 Test Completion Report 結構編製
- 測試報告是上線決策的核心依據文件,數據需客觀且可驗證
- 搭配「測試計畫範本」使用 — 目標值/通過條件需在測試計畫中定義
- 搭配「測試案例範本」使用 — 執行結果追溯至具體測試案例
- 版本發佈前必須產出,並經所有利害關係人簽核