---
# System prepended metadata

title: 軟體測試文件 (STD)

---

# 軟體測試文件 (STD)

- **系統名稱**：北寧早餐店系統
- **專案名稱**：早一點
- **撰寫日期**：2025/12/19
- **發展者**：
  - 01157128 蔡翊宣
  - 01257116 康慈軒
  - 01257126 呂亭儀
  - 01257153 鄭尹宣
  - 01257161 李永聖

---

## 版次變更記錄

| 版次 | 變更項目 | 變更日期 |
| :--- | :--- | :--- |
| 0.1 | 初版文件建立（含系統範圍與環境規劃） | 2025/12/19 |
| 0.2 | 新增測試案例                     | 2025/12/20 |
| 0.3 | 修正部分缺失                     | 2025/12/29 |
| 1.0 | 最終版                          | 2026/01/03 |

---

## 目錄

1. [測試目的與接受準則](#1-測試目的與接受準則)
2. [測試環境](#2-測試環境)
3. [測試案例](#3-測試案例)
4. [測試工作指派與時程](#4-測試工作指派與時程)
5. [測試結果與分析](#5-測試結果與分析)
6. [追溯表](#6-追溯表)

---

## 1. 測試目的與接受準則 (Objectives and Acceptance Criteria)

### 1.1 系統範圍 (System Scope)

本測試報告涵蓋「早一點」早餐點餐平台之全模組驗證。測試範圍包含：
* **使用者權限驗證：** 買家與商家之註冊、登入及身分導向功能。
* **買家端流程：** 包含餐廳瀏覽、菜單點選、購物車管理、線上結帳及「內用桌號」與「外帶自取時間」之選擇邏輯。
* **商家端流程：** 包含商家專屬介面顯示、基本資料設定與菜單管理功能。
* **開發完整度：** 目前系統功能完成度為 **90%**。本測試文件規劃了相對應的單元測試與系統測試案例，以確保所有核心業務邏輯均能正常運作。
* **測試版本標籤：** 本次測試對象為 `v1.0.0-release`。

### 1.2 測試接受準則 (Test Acceptance Criteria)

測試程序需要依照本測試計畫所訂定的程序進行，所有測試結果需要能符合預期測試結果方能接受。
- 當測試案例未通過時，相關模組開發之負責人需要進行程式修改，以能讓此案例重新通過測試。
- 重新進行測試時，測試人員需確認其他可能受影響的案例仍可正確執行。

---

## 2. 測試環境 (Testing Environment)

### 2.1 硬體需求

| 項次 | 名稱 | 數量 | 規格 | 備註 |
| :--- | :--- | :--- | :--- | :--- |
| 1 | **雲端/本地伺服器** | 1 | CPU: 4-Core, RAM: 8GB, SSD: 20GB+ | 用於部署網頁前後端 |
| 2 | **買家/商家端設備** | 1 | PC (Windows/Mac) 或 行動裝置 (iOS/Android) | 只要能運行瀏覽器的設備皆可測試 |
| 3 | **測試用網路環境**  | 1 | 穩定 Wi-Fi 或 4G/5G 行動網路 | 測試網頁載入速度 |

### 2.2 軟體需求

| 項次 | 名稱             | 數量 | 規格           | 備註                       |
|:---- |:---------------- |:---- |:-------------- |:-------------------------- |
| 1    | **客戶端瀏覽器** | 1    | Chrome、Safari | 確保網頁跨瀏覽器相容性     |
| 2    | **資料庫系統**   | 1    | MongoDB        | 儲存使用者、菜單與訂單資料 |
| 3    | **執行環境**     | 1    | Docker         | 負責運行前端與後端容器服務 |

### 2.3 測試資料來源

測試資料主要透過以下方式收集與發展：
1.  **預設資料集：** 手動建立 3 家模擬早餐店之菜單、價格及桌號資訊。
2.  **模擬帳號：** 建立測試用買家帳號 5 組、商家帳號 3 組。
3.  **異常輸入：** 包含錯誤的自取時間、加入不同店家的商品至購物車等。

### 2.4 測試工具與設備

<!-- * **自動化測試工具：** Jest (用於單元與整合測試)。 -->
* **API 測試：** Postman (驗證後端 API 端點)。
* **版本控制：** Git (使用 `git tag` 管理測試版本)。
* **環境管理：** Docker Desktop, Docker Compose。

---

## 3. 測試案例 (Test Cases)

| 欄位 | 內容 |
|---|---|
| **Identification** | BY-001 |
| **Name** | 買家身分註冊測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | High |
| **Instructions** | 1. 進入主頁面<br>2. 點擊註冊<br>3. 填寫資料後點擊註冊 |
| **Expected Result** | 成功建立帳號並導向餐廳列表首頁 |
| **Cleanup** | 刪除測試買家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | BY-002 |
| **Name** | 買家身分登入測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | High |
| **Instructions** | 1. 進入主頁面<br>2. 輸入資料並選擇「買家」<br>3. 點擊登入 |
| **Expected Result** | 成功登入帳號並導向餐廳列表首頁 |
| **Cleanup** | 刪除測試買家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | BY-003 |
| **Name** | 買家第三方註冊測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入主頁面<br>2. 點擊註冊<br>3. 選擇「買家」並選擇第三方註冊 |
| **Expected Result** | 成功註冊帳號並導向餐廳列表首頁 |
| **Cleanup** | 刪除測試買家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | BY-004 |
| **Name** | 買家第三方登入測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入主頁面<br>2. 選擇「買家」並選擇第三方登入 |
| **Expected Result** | 成功登入帳號並導向餐廳列表首頁 |
| **Cleanup** | 刪除測試買家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | BY-005 |
| **Name** | 未登入買家測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入主頁面<br>2. 選擇「先不登入」 |
| **Expected Result** | 導向餐廳列表首頁 |
| **Cleanup** | 無 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MC-001 |
| **Name** | 商家身分註冊測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | High |
| **Instructions** | 1. 進入主頁面<br>2. 輸入資料並選擇「商家」<br>3. 點擊註冊 |
| **Expected Result** | 成功建立帳號並自動導向商家設定頁面 |
| **Cleanup** | 刪除測試商家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MC-002 |
| **Name** | 商家身分登入測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | High |
| **Instructions** | 1. 進入主頁面<br>2. 輸入資料並選擇「商家」<br>3. 點擊登入 |
| **Expected Result** | 成功登入帳號並自動導向商家設定頁面 |
| **Cleanup** | 刪除測試商家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MC-003 |
| **Name** | 商家第三方註冊測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入主頁面<br>2. 點擊註冊<br>3. 選擇「商家」並選擇第三方註冊 |
| **Expected Result** | 成功建立帳號並自動導向商家設定頁面 |
| **Cleanup** | 刪除測試商家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MC-004 |
| **Name** | 商家第三方登入測試 |
| **Reference** | 使用者身分模組 |
| **Severity** | High |
| **Instructions** | 1. 進入主頁面<br>2. 選擇「商家」並選擇第三方登入 |
| **Expected Result** | 成功登入帳號並自動導向商家設定頁面 |
| **Cleanup** | 刪除測試商家帳號 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | UM-001 |
| **Name** | 編輯使用者資訊 |
| **Reference** | 使用者身分模組 |
| **Severity** | High |
| **Instructions** | 1. 在 sidebar 中點擊「使用者資訊」 |
| **Expected Result** | 彈跳出編輯使用者資訊的視窗，可更改使用者頭像、名稱、電話、電子郵件 |
| **Cleanup** | 在 sidebar 中回到首頁 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | FA-001 |
| **Name** | 收藏商品 |
| **Reference** | 個人化設定模組 |
| **Severity** | Medium |
| **Instructions** | 1. 點擊想要收藏的商品<br>2. 點擊「加入收藏」 |
| **Expected Result** | 成功將該商品加入收藏 |
| **Cleanup** | 移除收藏商品 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | FA-002 |
| **Name** | 收藏店家 |
| **Reference** | 個人化設定模組 |
| **Severity** | Medium |
| **Instructions** | 1. 點擊想要收藏的店家<br>2. 點擊店家名稱旁的愛心標誌 |
| **Expected Result** | 成功將該店家加入收藏 |
| **Cleanup** | 移除收藏店家 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | FA-003 |
| **Name** | 設定常用餐點組合 |
| **Reference** | 個人化設定模組 |
| **Severity** | Medium |
| **Instructions** | 1. 新增自訂組合並設定組合名稱<br>2. 將商品加入自訂組合 |
| **Expected Result** | 成功將該商品加入自訂組合，並且一個組合內的商品只能來自一個店家 |
| **Cleanup** | 移除該自訂組合 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | FA-004 |
| **Name** | 瀏覽收藏內容 |
| **Reference** | 個人化設定模組 |
| **Severity** | Medium |
| **Instructions** | 1. 在 sidebar 中點擊「收藏」前往收藏頁面 |
| **Expected Result** | 瀏覽收藏的店家、商品及自訂組合 |
| **Cleanup** | 在 sidebar 中回到首頁 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | BYM-001 |
| **Name** | 瀏覽主頁面 |
| **Reference** | 買家主頁面模組 |
| **Severity** | High |
| **Instructions** | 1. 在 sidebar 中點擊「首頁」前往買家主頁面 |
| **Expected Result** | 瀏覽各式店家 |
| **Cleanup** | 無 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | BYM-002 |
| **Name** | 搜尋店家 |
| **Reference** | 買家主頁面模組 |
| **Severity** | Medium |
| **Instructions** | 1. 在買家主頁面中點擊搜尋欄並輸入關鍵字 |
| **Expected Result** | 展示符合關鍵字的店家 |
| **Cleanup** | 無 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MCM-001 |
| **Name** | 瀏覽餐廳頁面 |
| **Reference** | 餐廳頁面模組 |
| **Severity** | High |
| **Instructions** | 1. 在買家主頁面點擊某一餐廳以前往該餐廳的餐廳頁面 |
| **Expected Result** | 在買家點擊餐廳後，能夠瀏覽餐廳的當日營業時間、地址、品項等 |
| **Cleanup** | 在 sidebar 中回到首頁 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MCM-002 |
| **Name** | 搜尋商品 |
| **Reference** | 餐廳頁面模組 |
| **Severity** | Medium |
| **Instructions** | 1. 在餐廳頁面中點擊搜尋欄並輸入關鍵字 |
| **Expected Result** | 展示符合關鍵字的商品 |
| **Cleanup** | 在 sidebar 中回到首頁 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-001 |
| **Name** | 內用下單 |
| **Reference** | 訂單交易模組 |
| **Severity** | High |
| **Instructions** | 1. 選取餐點入購物車<br>2. 進入結帳頁選「內用」<br>3. 輸入桌號並付款 |
| **Expected Result** | 系統成功儲存訂單及桌號，顯示下單成功 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-002 |
| **Name** | 外帶預約時間 |
| **Reference** | 訂單交易模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入結帳頁選「外帶」<br>2. 選擇取餐時間並點擊下單 |
| **Expected Result** | 系統儲存取餐時間，並在商家端正確顯示 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-003 |
| **Name** | 於非營業時間內用下單 |
| **Reference** | 訂單交易模組 |
| **Severity** | High |
| **Instructions** | 1. 選取餐點入購物車<br>2. 進入結帳頁選「內用」<br>3. 輸入桌號並於非營業時間送出訂單 |
| **Expected Result** | 系統偵測時間為非營業時間，禁止生成訂單 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-004 |
| **Name** | 外帶預約時間為非營業時間 |
| **Reference** | 訂單交易模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入結帳頁選「外帶」<br>2. 選擇未營業時間取餐並點擊下單 |
| **Expected Result** | 系統偵測取餐時間為非營業時間，禁止生成訂單 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-005 |
| **Name** | 買家端訂單管理 |
| **Reference** | 訂單交易模組 |
| **Severity** | High |
| **Instructions** | 1. 進入訂單管理頁面<br>2. 查看已送出的訂單內容、狀態 |
| **Expected Result** | 買家端進入訂單管理頁面時，能看到送出的訂單 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-006 |
| **Name** | 未登入買家端訂單管理 |
| **Reference** | 訂單交易模組 |
| **Severity** | Medium |
| **Instructions** | 1. 進入訂單管理頁面<br>2. 查看已送出的訂單內容、狀態 |
| **Expected Result** | 未登入買家端進入訂單管理頁面時，能看到送出的訂單 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | OD-007 |
| **Name** | 商家端訂單管理 |
| **Reference** | 訂單交易模組 |
| **Severity** | High |
| **Instructions** | 1. 進入訂單管理頁面<br>2. 查看已收到的訂單<br>3. 可以調整訂單狀態至接受訂單、開始準備、製作完成、顧客已取餐 |
| **Expected Result** | 商家端進入訂單管理頁面時，能看到進來的訂單，並能夠改變它們的狀態 |
| **Cleanup** | 刪除該筆測試訂單 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | CT-001 |
| **Name** | 新增商品至購物車 |
| **Reference** | 購物車模組 |
| **Severity** | High |
| **Instructions** | 1. 點擊想加入購物車的商品，並點擊「加入購物車」 |
| **Expected Result** | 商品成功加入至購物車 |
| **Cleanup** | 清空購物車 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | CT-002 |
| **Name** | 修改購物車內的商品 |
| **Reference** | 購物車模組 |
| **Severity** | High |
| **Instructions** | 1. 進到購物車頁面<br>2. 修改商品數量 |
| **Expected Result** | 購物車即時更新正確的數量、小計金額、總金額 |
| **Cleanup** | 清空購物車 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | CT-003 |
| **Name** | 刪除購物車內的商品 |
| **Reference** | 購物車模組 |
| **Severity** | High |
| **Instructions** | 1. 進到購物車頁面<br>2. 刪除商品 |
| **Expected Result** | 購物車即時更新正確的數量、小計金額、總金額 |
| **Cleanup** | 清空購物車 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | CT-004 |
| **Name** | 刪除購物車內同樣品項、客製化不同之商品 |
| **Reference** | 購物車模組 |
| **Severity** | High |
| **Instructions** | 1. 加入某一餐點<br>2. 加入同樣的餐點但客製化內容不同<br>3. 刪除其中一個餐點 |
| **Expected Result** | 只會刪除要刪除的餐點，不會兩個都刪除掉 |
| **Cleanup** | 清空購物車 |

---]

| 欄位 | 內容 |
|---|---|
| **Identification** | MS-001 |
| **Name** | 商家編輯店家資訊 |
| **Reference** | 商家管理模組 |
| **Severity** | High |
| **Instructions** | 1. 進入商家設定頁面<br>2. 修改店家資訊並儲存 |
| **Expected Result** | 店家資訊成功更新 |
| **Cleanup** | 還原店家資訊 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MS-002 |
| **Name** | 商家新增商品分類 |
| **Reference** | 商家管理模組 |
| **Severity** | High |
| **Instructions** | 1. 進入菜單管理頁<br>2. 點擊「新增分類」並輸入分類名稱 |
| **Expected Result** | 商家成功新增商品分類，並需要在此分類下創建一個商品以保存此分類 |
| **Cleanup** | 刪除測試商品分類 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MS-003 |
| **Name** | 商家新增商品 |
| **Reference** | 商家管理模組 |
| **Severity** | High |
| **Instructions** | 1. 進入菜單管理頁<br>2. 點擊「新增商品」<br>3. 輸入商品名稱、價錢、照片、簡介、新增客製化選項，並加入一個已存在的商品分類 |
| **Expected Result** | 商家成功新增商品 |
| **Cleanup** | 刪除測試商品 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MS-004 |
| **Name** | 商家修改商品 |
| **Reference** | 商家管理模組 |
| **Severity** | High |
| **Instructions** | 1. 進入菜單管理頁<br>2. 點擊要修改的商品，修改並儲存變更 |
| **Expected Result** | 商家成功修改商品 |
| **Cleanup** | 修改測試商品至修改前的狀態 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MS-005 |
| **Name** | 商家刪除商品分類 |
| **Reference** | 商家管理模組 |
| **Severity** | High |
| **Instructions** | 1. 進入菜單管理頁<br>2. 點擊要刪除的商品分類旁邊的「刪除分類」 |
| **Expected Result** | 商家成功刪除商品分類 |
| **Cleanup** | 將已刪除的測試商品分類重新新增 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | MS-006 |
| **Name** | 商家刪除商品 |
| **Reference** | 商家管理模組 |
| **Severity** | High |
| **Instructions** | 1. 進入菜單管理頁<br>2. 點擊要刪除的商品，並點選「刪除」 |
| **Expected Result** | 商家成功刪除商品 |
| **Cleanup** | 將已刪除的測試商品重新新增 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | PN-001 |
| **Name** | 買家接收通知 |
| **Reference** | 通知管理模組 |
| **Severity** | Medium |
| **Instructions** | 1. 買家送出訂單<br>2. 商家將訂單狀態調整為「已完成」 |
| **Expected Result** | 買家接收到訂單已完成的通知 |
| **Cleanup** | 將測試訂單刪除 |

---

| 欄位 | 內容 |
|---|---|
| **Identification** | PN-002 |
| **Name** | 商家接收通知 |
| **Reference** | 通知管理模組 |
| **Severity** | Medium |
| **Instructions** | 1. 買家送出訂單 |
| **Expected Result** | 商家接收到新的訂單的通知 |
| **Cleanup** | 將測試訂單刪除 |

### PR-001

| 欄位 | 內容 |
|---|---|
| **Identification** | PR-001 |
| **Name** | 系統高併發穩定性測試 |
| **Reference** | 系統架構 / 非功能需求 |
| **Severity** | High |
| **Instructions** | 1. 使用 Postman Runner 或壓力測試工具<br>2. 設定重複次數 (Iterations) 為 100<br>3. 對主要 API (如獲取菜單) 進行連續請求 |
| **Expected Result** | 系統在 100 次請求下正常運作，所有請求皆回傳 200 OK (Pass)，無報錯或崩潰 |
| **Cleanup** | 清除測試工具的 Log 紀錄 (若有寫入資料則需刪除測試數據) |

---

### PR-002

| 欄位 | 內容 |
|---|---|
| **Identification** | PR-002 |
| **Name** | 系統回應效能測試 |
| **Reference** | 效能優化模組 |
| **Severity** | Medium |
| **Instructions** | 1. 開啟 Chrome DevTools (Network 分頁)<br>2. 執行登入、瀏覽店家或獲取菜單等動作<br>3. 檢查 API 的 Time 欄位數值 |
| **Expected Result** | 所有功能的 API 回應時間皆小於 5 秒 (5000ms) |
| **Cleanup** | 清除瀏覽器快取 (以利下次測試準確性) |

---

### PR-003

| 欄位 | 內容 |
|---|---|
| **Identification** | PR-003 |
| **Name** | SSL 憑證安全性驗證 |
| **Reference** | 資安與部署設定 |
| **Severity** | High |
| **Instructions** | 1. 使用瀏覽器開啟系統網址<br>2. 觀察網址列開頭與圖示<br>3. 點擊鎖頭圖示查看憑證資訊 |
| **Expected Result** | 網址列顯示 HTTPS 協定與鎖頭圖示，且憑證顯示由 Render (或相關機構) 核發有效 |
| **Cleanup** | 無 |

---

## 4. 測試工作指派與時程 (Personnel and Schedule)

### 4.1 測試成員 (Personnel)

| 姓名 | 職責 |
| :--- | :--- |
| 蔡翊宣 | 測試整體規劃與測試報告複核 |
| 康慈軒 | 測試整體規劃與測試報告複核 |
| 呂亭儀 | 測試整體規劃與測試報告複核 |
| 鄭尹宣 | 買家端功能執行測試與缺失回報、測試報告複核 |
| 李永聖 | 商家端與 API 整合執行測試 |

---

## 5. 測試結果與分析 (Test Results and Analysis)

### 5.1 測試結果 (Test Results)

| 測試案例編號      | 測試結果 (Pass/Fail) | 註解 |
|:----------------- |:-------------------- |:---- |
| BY-001            | Pass                 |      |
| BY-002            | Pass                 |      |
| BY-003            | Pass                 |      |
| BY-004            | Pass                 |      |
| BY-005            | Pass                 |      |
| MC-001            | Pass                 |      |
| MC-002            | Pass                 |      |
| MC-003            |<span style="color:red">Fail</span>|後端功能邏輯錯誤|
| MC-004            |<span style="color:red">Fail</span>|後端功能邏輯錯誤|
|UM-001|Pass||
| FA-001            | Pass                 |      |
| FA-002            | Pass                 |      |
| FA-003            | Pass                 |      |
| FA-004            | Pass                 |      |
| BYM-001           | Pass                 |      |
| BYM-002           | Pass                 |      |
| MCM-001           | Pass                 |      |
| MCM-002           | Pass                 |      |
| OD-001            | Pass                 |      |
| OD-002            | Pass                 |      |
| OD-003            | Pass                 |      |
| OD-004            | Pass                 |      |
| OD-005            | Pass                 |      |
| OD-006            | Pass                 |      |
| OD-007            | Pass                 |      |
| CT-001            | Pass                 |      |
| CT-002            | Pass                 |      |
| CT-003            | Pass                 |      |
| CT-004            |<span style="color:red">Fail</span>|會將兩個同品項、不同客製化選項的商品移除|
| MS-001            | Pass                 |      |
| MS-002            | Pass                 |      |
| MS-003            | Pass                 |      |
| MS-004            | Pass                 |      |
| MS-005            | Pass                 |      |
| MS-006            | Pass                 |      |
| PN-001            | Pass                 |      |
| PR-001            | Pass                 |      |
| PR-002            | Pass                 |      |
| PR-003            | Pass                 |      |
| **RATE**          | **92.5 %**           | （37/40） |

---

### 5.2 缺失報告 (Defect Tracking)

| 欄位 | 內容 |
|---|---|
| **缺失標號** | 001 |
| **缺失嚴重性** | Medium |
| **缺失說明** | 買家第三方註冊、登入之功能前後端尚未整合 |
| **測試案例編號** | BY-003、BY-004 |
| **缺失負責人** | 康慈軒 |
| **修復狀態** | Closed |
| **修復說明** | 買家現在可以透過 Google 第三方登入平台 |

---

| 欄位 | 內容 |
|---|---|
| **缺失標號** | 002 |
| **缺失嚴重性** | Medium |
| **缺失說明** | 商家第三方註冊、登入之功能後端邏輯有誤 |
| **測試案例編號** | MC-003、MC-004 |
| **缺失負責人** | 康慈軒 |
| **修復狀態** | Open |
| **修復說明** | |

---

| 欄位 | 內容 |
|---|---|
| **缺失標號** | 003 |
| **缺失嚴重性** | Medium |
| **缺失說明** | 內用送單時間若為非營業時間，系統未報錯 |
| **測試案例編號** | OD-003 |
| **缺失負責人** | 康慈軒 |
| **修復狀態** | Closed |
| **修復說明** | 內用送單時間若為非營業時間，系統會禁止生成訂單 |

---

| 欄位 | 內容 |
|---|---|
| **缺失標號** | 004 |
| **缺失嚴重性** | Medium |
| **缺失說明** | 外帶預約時間時間若為非營業時間，系統未報錯 |
| **測試案例編號** | OD-004 |
| **缺失負責人** | 康慈軒 |
| **修復狀態** | Closed |
| **修復說明** | 外帶預約時間若為非營業時間，或為現在時間之前的時間，系統會禁止生成訂單 |

---

| 欄位 | 內容 |
|---|---|
| **缺失標號** | 005 |
| **缺失嚴重性** | High |
| **缺失說明** | 刪除同品項但客製化內容不同之商品時會一起刪除 |
| **測試案例編號** | CT-004 |
| **缺失負責人** | 李永聖 |
| **修復狀態** | Open |
| **修復說明** | |

---

## 6. 追溯表 (Traceability Matrix)

| Req. No. (需求編號) | Test Case # (測試案例) | Verification (驗證狀態) |
| :--- | :--- | :--- |
| SI-001 (註冊) | BY-001 BY-003 MC-001 MC-003 | Verified |
| SI-002 (登入) | BY-002 BY-004 BY-005 MC-002 MC-004 | Verified |
| SI-003 (忘記密碼) | CT-001 | Verified |
| PS-001 (收藏商品) | FA-004 | Verified |
| PS-002 (常用餐點組合瀏覽) | FA-003 | Verified |
| PS-003 (登出) | MS-001 | Verified |
| MM-001 (菜單管理) | MS-002 MS-003 MS-004 MS-005 MS-006 | Verified |
| MM-002 (訂單管理) | OD-007 PN-001 PN-002 | Verified |
| MM-003 (登出) | MS-001 | Verified |
| MM-004 (商家設定) | MS-001 | Verified |
| CM-001 (商家陳列) | MCM-001 | Verified |
| CM-002 (搜尋欄) | BYM-002| Verified |
| RP-001 (店家資訊) | MS-001 | Verified |
| RP-002 (商品搜尋) | MCM-002 | Verified |
| RP-003 (商家收藏) | FA-002 | Verified |
| PP-001 (商品購買) | MS-001 | Verified |
| PP-002 (商品收藏) | FA-001 | Verified |
| CP-001 (項目編輯) | CT-001 CT-002 CT-003 CT-004 | Verified |
| CP-002 (確認商品) | OD-001 OD-003 | Verified |
| CP-003 (返回菜單) | MS-001 | Verified |
| OP-001 (外帶/內用) | OD-001 OD-002 OD-003 OD-004 | Verified |
| OP-002 (支付方式) | MS-001 | Verified |
| OP-003 (確認明細) | MS-001 | Verified |
| OP-004 (登入/註冊) | MS-001 | Verified |
| OI-001 (歷史紀錄) | OD-005 | Verified |
| OI-002 (訂單狀態) | OD-005 | Verified |
| MC-001 (收藏商家陳列) | MS-001 | Verified |
| NB-001 (主頁面) | BYM-001 | Verified |
| NB-002 (訂單查詢頁面) | OD-006 | Verified |
| NB-003 (個人化設定頁面) | UM-001 | Verified |
| PR-001 (非功能需求) | PR-001 | Verified |
| PR-002 (非功能需求) | PR-002 | Verified |
| PR-003 (非功能需求) | PR-003 | Verified |
