Web 測試的特殊挑戰
- 發布週期極短(天/小時級),傳統月/年級流程不適用
- 需驗證跨瀏覽器、跨平台顯示一致性
- 必須從最終用戶角度進行安全性與易用性測試
- 網路環境不可預測,測試環境難以完全模擬生產
一、功能測試
1. 連結測試
- 所有連結是否正確導向目標頁面
- 目標頁面是否存在(無 404)
- 無孤立頁面(無任何入口連結的頁面)
- 可用自動化工具(如 Xenu、LinkChecker)在整合測試階段完成
2. 表單測試
- 提交完整性:必填欄位、資料格式(Email、電話、日期)
- 業務邏輯驗證:出生日期合理性、省市聯動匹配
- 預設值正確性
- 邊界測試:僅接受特定字元集、長度限制、SQL 注入/XSS 防禦
3. Cookies 測試
- 正常寫入/讀取/刪除
- 過期時間是否生效
- 重新整理、關閉瀏覽器後行為
- 安全屬性:
HttpOnly、Secure、SameSite
4. 設計語言測試
- HTML 版本相容性(HTML5/4.01/XHTML)
- 腳本語言支援:JavaScript、VBScript、TypeScript 編譯產物
- 分散式開發環境下的編碼一致性(UTF-8)
5. 資料庫測試
- 資料一致性:表單提交資料正確寫入、關聯完整性
- 輸出正確性:查詢結果、分頁、排序、匯出功能
- 效能:慢查詢、鎖競爭、連線池耗盡
二、效能測試
1. 連線速度
- 模擬撥號、寬帶、行動網路(3G/4G/5G)不同頻寬
- 頁面載入 < 5 秒為宜,超過用戶流失率劇增
- 逾時設定:避免用戶尚未瀏覽內容即被迫重新登入
2. 負載測試
- 同時在線用戶數支撐上限
- 熱門頁面(首頁、登入、搜尋)高併發請求處理
- 資源使用率:CPU、記憶體、磁碟 IO、網路頻寬、資料庫連線數
3. 壓力測試
- 超越正常負載極限,觀察系統崩潰行為
- 故障恢復能力:重啟後資料一致性、Session 恢復
- 惡意輸入:超大表單、畸形請求、SQL 注入負載
- 必須在真實網路環境(Internet)執行,內部測試無法模擬真實併發
三、易用性測試
1. 導航測試
- 直觀性:用戶無需學習即可找到目標
- 首頁可達性:核心功能是否可從首頁進入
- 站點地圖、搜尋、麵包屑等輔助導航
- 資訊架構層級不宜過深(建議 ≤ 3 層)
- 風格一致性:按鈕、選單、連結、排版風格統一
2. 圖形測試
- 用途明確:圖片/動畫服務內容,非裝飾堆砌
- 檔案大小最佳化:WebP、AVIF、壓縮 JPEG/PNG
- 字體風格、背景前景對比度符合 WCAG AA 級
- 回應式圖片:
srcset、picture 標籤適配不同裝置
3. 內容測試
- 正確性:價格、規格、法律條文無誤
- 準確性:無錯別字、語法錯誤(可用 Grammarly、LanguageTool 輔助)
- 相關性:相關文章推薦、交叉連結完整
4. 整體介面測試
- 主觀體驗:舒適度、直覺操作、品牌一致性
- 需引入外部用戶/真實用戶參與,開發團隊易產生盲點
- 問卷回饋、A/B 測試、熱力圖分析
四、客戶端相容性測試
1. 平台測試
- Windows、macOS、Linux、iOS、Android 主流版本
- 不同螢幕解析度、DPI 縮放
2. 瀏覽器測試
- 核心引擎:Chromium (Chrome/Edge/Opera)、WebKit (Safari)、Gecko (Firefox)
- 版本矩陣:主流最新 2-3 版 + 企業長期支援版 (ESR)
- 功能支援差異:CSS Grid、Flexbox、Web Components、Service Worker、IndexedDB
- 安全策略差異:CSP、COOP、COEP、混合內容阻擋
- 建立相容性矩陣表追蹤各瀏覽器支援狀況
五、安全性測試
- 認證授權:暴力破解防護、帳號鎖定、多因子驗證 (MFA)、Session 固定/劫持防護
- Session 管理:閒置逾時、絕對逾時、登出銷毀、同步登出多裝置
- 日誌審計:關鍵操作(登入、權限變更、資料匯出)完整記錄、不可竄改、可追蹤
- 傳輸加密:TLS 1.2+、HSTS、憑證透明度、完美前向保密
- 輸入驗證:SQL 注入、XSS、CSRF、SSRF、XXE、檔案上傳驗證
- 錯誤處理:生產環境不暴露堆疊追蹤、資料庫結構、伺服器資訊
現代測試工具鏈建議
| 類別 | 推薦工具 |
| 自動化功能測試 | Cypress、Playwright、Puppeteer、Selenium |
| API 測試 | Postman、Insomnia、REST Assured、Pact (契約測試) |
| 效能/負載 | k6、JMeter、Locust、Gatling |
| 安全掃描 | OWASP ZAP、Burp Suite、SonarQube、Snyk |
| 視覺回歸 | Percy、Chromatic、BackstopJS |
| 跨瀏覽器 | BrowserStack、Sauce Labs、LambdaTest |
| 易用性 | Hotjar、FullStory、Maze、UserTesting |
系統化的 Web 測試策略,結合自動化與人工探索式測試,才能在高速迭代中守住品質底線。