介面測試 全量測試點分析
後端介面測試點分析
目錄1.介面測試
介面測試的原理
測試人員結局工具模擬客戶端向伺服器段傳送請求 伺服器端接收請求報文後 對響應的報文做處理並作出處理並向客戶端返回應答 工具模擬的客戶端接收應答 然後測試人員查新應答是否準確 這就是介面測試的原理 。所以介面測試的重點和難點在於測試資料的輸入和輸出
通用的介面測試範圍
- 功能實現
- 效能達標
- 安全性
關注重點在於 資料的交換 傳遞 處理次數 以及控制管理過程
後端測試點分析
介面功能
靜態文件檢查-確認介面資訊項準確性
對於一個新增介面來說 需要根據根據 介面文件 資料庫資訊項文件 以及需求文件(資料字典)確定介面資訊項的準確性 測試重點在於在於 長度 必填項 型別 等重要的欄位屬性檢查
單介面測試- 全量
對於單介面測試來說 測試重點在於介面本身 及
全量入參主要驗證單介面全量入參 主要驗證的是
單介面正向功能
資訊項的全量覆蓋
資料庫儲存檢查
關注點在於 資料全量輸入與介面的正確響應。
單介面測試測試- 必填項
必填項測試 主要驗證的是 欄位必填屬性是否存在遺漏和多餘
單介面測試 - 長度邊界
長度邊界正向測試 主要驗證 介面欄位的長度屬性 一般與 全量一起驗證
單介面測試 - 碼值覆蓋
該測試主要是驗證 欄位的碼值屬性 關注點在於 碼值引用的正確性和 碼值翻譯值的正確性
單介面測試 - 場景模擬
這個個人認為它是 引數組合驗證的一個分支 測試點是 依據需求需要滿足客戶常用場景的引數組合 是否存在錯誤
反向 - 超長測試
該測試為反向測試 測試點在於 超出欄位的長度後 介面是否可以正確響應(400)提示是否準確 資料是否正確處理(資料不存庫等)
反向 - 必填項缺失
該測試為反向測試 測試點在於 介面必填項缺失入參 介面可以正確響應 提示準確 資料庫正確處理
注意 : 雖然反向驗證點基本一致 但為了避免存在干擾測試 一般單獨測試
特殊單介面測試
聚合介面測試
聚合介面是為了防止非同步調用出現衝突問題而使用的一種介面 將某些請求包裝在一層請求的處理方法中 通過呼叫外層方法呼叫幾個介面來滿足需求
所以在做聚合介面的外層測試與單介面測試時的注意點保持一致 特別要注意的是介面返回值是否滿足需求和開發定義好的規則
一般與開發確定
批量介面測試
對於有批量操作的功能 除了一般的單介面測試點外 需要驗證 批量介面的效能 依據是需求給出的需求文件 和效能測試給出的具體要求
單模組測試(閉環模擬)
可以理解為單模組的的增刪改查測試 確保模組級別的資料流轉
一般單模組的閉環模擬
新增-- 外來鍵查詢 --- 修改 --- 主鍵查詢 -- 新增-- 數量查詢--- 刪除
如果存在其他單介面 可以在這個閉環中根據情況加入節點
模組整合測試
模組整合閉環一般指的是單一服務 存在多個單模組時 模組間的資料傳輸 特別要注意存在父子關係模組的資料傳輸
也就是
子節點資料是否向父節點傳輸標識欄位資料(冗餘欄位
)
父節點資料刪除 子節點資料同步刪除
如果是平級的不同模組 則需要測試的是
資料互相傳輸的準確性(數量和質量)
模組與模組之間資料的耦合欄位測試 (資料總體不受影響 如果有欄位冗餘 發起方模組資料刪除 冗餘欄位也需要刪除)
例如 資料庫主表和各個字表之間就是這個關係
介面邏輯
邏輯覆蓋驗證
邏輯覆蓋 則是對 介面邏輯作為測試點 分析 測試 覆蓋介面邏輯
通常 邏輯覆蓋驗證 與 判定表測試方法結合 驗證需求 分析 需求的 (顯性/隱性)測試點 達到邏輯的全面覆蓋
程式碼覆蓋驗證(能力 UP ↑)
這種方法需要一定的讀程式碼能力 (也可以簡化為 搜尋if 分支)
根據程式碼if分支條件 生成測試點 與判定表方法結合生成測試用例 做到程式碼覆蓋
服務整合測試(資料 流轉)
服務間的整合測試 主要的測試點是在於服務間的測試流轉 體現在介面則是 (中介軟體) 的相關測試內容
1 資料流轉的發起點(發起邏輯的)的準確性
2 流轉的資料是否符合要求 正確性如何
3 接收方 接收流轉後的資料處理是否準確
多前端測試
這是業務中臺特有 的測試內容
測試點 在於各個場景層對於資料處理要求的差異點 每個差異點 對資料中臺來說都是測試點
業務模擬測試
業務模擬測試的測試點其實與常用引數組合測試的測試點類似
主要是 依據需求背景 提煉使用者的常用場景 對每個場景進行介面組合測試 資料流轉處理是否正確
異常探索性測試
相對於上面的測試點這裡的測試點 的優先順序一般會低一些
異常 -- 冪等測試
測試點在於重複提交 介面的相應情況
異常 -- 併發測試
效能測試部分 測試點為 資料併發介面是否異常
異常 -- 事務測試
此測試點包含在 服務間整合測試中 目前中臺的事務一般使用在服務間的資料流轉 一般體現為 資料流轉和介面本身邏輯的前後順序問題
測試點為 接收流轉資料介面的資料處理與本身介面功能邏輯是否存在衝突
異常 -- 環境異常
測試點 是 系統環境異常 介面處理是否滿足需求
(法庭 -- 日程)
異常 -- 加壓環境測試
測試點是 在加壓環境測試介面 介面是否可以正常執行
探索 -- 博物館測試
測試點在於 改動介面的歷史指令碼冒煙
其他測試點
效能測試
專門團隊負責 不再贅述
安全測試(建議)
1 控制檯和資料庫的日誌級別是否滿足安全需求
2 SQL注入(內網 暫不關注)
3 敏感資訊加密(暫未遇到)