1. 程式人生 > 其它 >介面用例設計

介面用例設計

介面用例設計

一、  介面測試工具

Jmeter、Postman、dubbo+testNG

二、  介面測試基本流程

研發架構設計、資料庫設計評審→介面設計評審→研發輸出介面文件→介面需求測試→測試輸出測試用例→評審用例→執行測試→測試報告輸出 

三、  介面測試前置工作—明確介面定義

(1)介面方式

展示介面的請求協議、請求方式以及請求路徑

(2)功能介紹

簡單介紹介面的使用場景,說明這個介面的用途。介面測試的目的就是證明有沒有滿足這些用途

(3)欄位

請求體:1)需標註請求引數名,引數資料型別

         2)需標註是否為非必填

         3) 需備註引數含義以及取值範圍、取值含義

返回體:1)需標註返回的引數名以及返回值結構

         2)需備註引數含義

         3)異常情況需標註錯誤碼code以及message提示資訊

舉例說明:

四、  介面用例設計基本框架

 1場景分類

(1)BVT場景的定義:

         BVT場景內只存在正向有效的測試用例,所有的傳參都必須符合業務邏輯、符合傳參規範。預期結果中一定能夠實現該介面有效的需求功能。通過此場景的用例可以保證介面通暢,基礎功能有效,此類用例為BVT用例。

 (2)NORMAL場景的定義:

   NORMAL場景記憶體在正向測試用例和反向測試用例,但是無論正向和反向都必須符合傳引數據型別規範、欄位必傳與非必傳規範。通過結合後端和需求設計,斷言在此類傳參的情況下程式碼對於正常有效場景和異常無效場景的判斷,並給出合理反饋。通過此類用例可驗證該介面需求功能所有有效和無效場景,涵蓋該介面所有的需求功能測試。此類用例為NORMAL用例。

(3) ABNORMAL場景的定義:

         ABNORMAL場景內僅存在異常無效的測試用例,通過傳入不合符傳參型別、必傳與非必傳、驗證介面對於異常場景的處理。此類用例為ABNORMAL用例。

2介面測試用例設計要點及場景設計:

介面邏輯驗證:

(1)根據需求內容和介面設計,設計邏輯場景測試,驗證介面在實際業務邏輯下的介面返回內容和資料庫的變更。

(2)存在上下游關聯的介面,在只存在引數傳遞情況下,上游介面可設定為前置條件,至測試介面為止(介面解耦)

(3)存在上下游關聯的介面,且存在邏輯場景,需排列組合場景,驗證各個組合場景下的介面功能實現,斷言主要驗證資訊。

(4)介面測試具有相同的前置條件時,可共用。例如登入的token資訊,只需要呼叫1次,提供給後續所有介面測試使用。

(5)介面測試指令碼要具備獨立性,測試產生的髒資料對後續介面有影響時,需要測試完成後恢復原始狀態(通過刪除介面或直接刪除資料庫)。

介面引數必傳與非必傳驗證:

(1)驗證必傳引數,有效場景下各個欄位傳入,能夠正常返回,並斷言介面主要功能資訊。

(2)驗證必傳欄位缺失,介面不能正常實現功能請求,斷言介面對缺失必傳欄位的驗證。

(3)驗證非必傳欄位,在正常傳入情況下,能夠正常實現介面功能,斷言介面主要功能資訊。

(4)驗證非必傳欄位,在缺失情況下,能夠正常實現介面功能,斷言介面主要功能資訊

(5)驗證欄位依賴情況, 例如如果傳入A欄位,就必須傳入C欄位的。設計正向用例,驗證欄位正常關聯情況下,介面返回正常,斷言介面主要測試內容資訊;設計異常用例,在關聯欄位不傳入的情況下,介面不能實現正常功能請求,斷言介面對缺失欄位的驗證。

介面引數欄位數值驗證:

(1)若欄位型別為字串和布林值,則僅需跟隨其他測試用例校驗即可,無需考慮傳入其他型別資料的情況。

(2)欄位型別為整數,需要驗證浮點數情況下,介面對於欄位的斷言,給出合理的異常提示。

(3)欄位型別為浮點型,驗證浮點數、整數均能正常處理,並正確返回引數

(4)根據實際需求對應的欄位長度,設計上下限邊界值測試用例,斷言介面在邊界值情況下的返回。

特殊場景驗證:

(1)介面功能為增加資料和扣減資料,類似於提交、報名、新增、上傳、扣減資產等增加或減少資料庫資料介面,根據實際場景設計單使用者和多使用者併發介面測試。測試點如下:

介面併發下,帶有唯一序列號的欄位是否會出現重複。

介面併發下,新增資料是否正常,是否出現重複新增。

介面併發下,擁有名額限制的功能,是否超出正常限制。

介面併發下,扣減功能是否出現多扣多減情況。

介面併發下,介面是否出現異常報錯。

3資料斷言:自動比對資料,不需要手工驗證

(1)斷言介面返回值(code、message、returenValue)

(2)斷言資料庫欄位值(新增資料是否在庫裡存在以及涉及的關聯資料表資料是否正確、刪除資料是否標註刪除、更新資料資料庫是否變更…)

舉例: