呂凱崴LU, Kai-Wei
課程專案NTNU DashboardNormal OJ 測試其他作品與經歷

C-2課程專案

Normal OJ 軟體工程專案:測試組組長

軟體工程課程第 1 組(12 人)為系上維護的線上評測系統 Normal Online Judge 開發五項功能:AI 助教、類 LeetCode 練習模式、API 權杖、自動評分管線、題目討論區。本人任測試組組長(三人),負責整組事項。

期間
2025-09 至 12(測試執行期 2025-12-01 至 12-29)
角色
測試組組長(三人);主筆測試計畫書與測試報告書,親自執行弱點掃描
技術
Pytest 與 pytest-cov、Poetry、Docker、Playwright(前端端對端);HCL AppScan Standard 10.9.1(校方授權)
規模
測試計畫書四版(v1.2 至 v2.1,79 頁);測試報告書 V2.2(137 頁);六份弱點掃描報告

書審對應:附件 C-2

01專案與角色

開發組同時開發五項功能,需求與設計在學期中持續變更;測試組必須在功能定案前先定出驗收標準,並在學期最後四週內完成全部功能的驗證與安全性測試。測試組三人由本人擔任組長,負責計畫書與報告書的主筆、測試分工與進度、與開發組的介面,以及弱點掃描的執行。

02測試計畫書

依需求書與各功能設計書逐項做需求審查(正確性、精確性、一致性、完整性)與設計審查(資料結構、演算法、介面一致性、可測試性);規劃 51 項測試案例摘要,界定各類測試的方法、通過準則、異常回報流程與時程:

計畫書歷經四版迭代(v1.2、v1.3、v2.0、v2.1),每版對應開發組的設計變更,以 Linear 追蹤並建檔。

03測試執行與報告書

測試期間四週又一日(2025-12-01 至 12-29),依計畫書對五項功能逐案例執行並記錄:每案例載明先前條件、步驟、預期結果與執行結果。

功能執行案例通過
AI 助教2222
類 LeetCode 練習模式1717
API 權杖3030
自動評分管線3535
題目討論區2222
合計126126

測試環境:前端 Ubuntu 22.04、Vue 與 Vite;後端 Flask 與 Gunicorn、Pytest 與 pytest-cov、MongoDB、Docker。報告書歷經三版修訂,由本人最後定稿。

04安全性測試

以校方授權的 HCL AppScan Standard 對系統執行六輪 Web 弱點掃描(2025-12-22 至 12-28),結果納入測試報告書的安全性測試章節,供開發組修正。本人因在師大資訊中心工讀而能操作該軟體,也把校內對外服務弱點掃描的經驗用在課程專案上。

05與專題的關聯

先訂驗收標準、再執行、再據實報告,與 APKSec Pro 的判定合約設計為同一原則;以掃描工具做安全性測試的經驗,也是專題選題的起點之一。

06文件