從開發角度設計服務端測試用例

[本文出自天外歸雲的博客園]

下面對一些服務端測試用例的設計思路做一個簡單總結

異常參數值組合測試

涉及:接口測試、單元測試

方法:

  • 構造足夠多種“異常類型數據”以及足夠多種“異常參數組合”對接口或函數進行接口測試或單元測試

非法請求測試

涉及:接口測試

方法:

  • 請求接口時,不附帶鑑權信息或帶非法的鑑權信息,檢查大量請求接口是否會對服務以及關聯中間件服務產生大量壓力

緩存中間件擊穿測試

涉及:CodeReview、接口測試

方法:

  • 走查接口代碼邏輯,若涉及緩存,針對緩存邏輯進行測試用例設計,着重針對key值不存在的穿透邏輯以及key值過期的擊穿邏輯進行測試方案設計

主路徑邏輯覆蓋測試

涉及:CodeReview、用例評審、接口測試

方法:

  • 走查接口代碼邏輯,確保測試用例覆蓋到所有的return分支

查詢類接口性能測試

涉及:CodeReview,數據構造,接口測試

方法:

  • 接口否需要做了緩存保護,如果沒有緩存,大量的請求是否會將數據庫服務打崩
  • 接口邏輯中是否做好合理分頁邏輯,數據庫錶針對常用查詢條件是否有合理的索引設計,數據量大的情況下,是否會有慢查詢產生

數據一致性測試

涉及:CodeReview,接口測試(組合驗證)

方法:

  • 涉及增、刪、改數據庫操作,並涉及緩存,確保緩存也同步進行了增、刪、改
  • 設計測試用例時可以進行組合接口測試,請求接口驗證數據庫值發生變化後,通過其他接口查詢涉及的緩存是否及時同步做了更新

故障注入測試

涉及:CodeReview,混沌實驗

方法:

  • 通過ChaosBlade工具來實現對指定後端服務所在節點的故障注入,比如:CPU、內存、磁盤佔用、網絡丟包、網絡延遲等
  • 通過ChaosBlade工具對Java服務做自定義異常注入和自定義腳本注入,對指定的類方法進行攔截,拋出自定義異常或替換成我們自己寫的java方法,實現邏輯替換,控制函數返回值
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章