引言
除了測試單個介面,我們常常需要對多個有資料或者邏輯關聯的介面進行業務流程測試,例如獲取驗證碼-註冊-登入。傳統測試業務流程需要編寫一系列測試程式碼,現在通過eoLinker全UI介面,無需編寫任何程式碼即可完成稍複雜的API測試。
關鍵詞
流程化測試、自動化測試、資料關聯
填寫完介面文件後,我們往往要對多個有資料或者邏輯關聯的介面進行API業務測試。精彩世界盃火熱進行,現以為支援球隊點贊業務來舉個例子:
介面1 登入:在進行測試前我們需要先登入,將其返回的token欄位作為後續介面的請求頭欄位。
介面2 獲取球佇列表:點贊之前我們需要先請求球佇列表陣列。
介面3 為球隊點贊:將上一個介面的球隊ID作為請求引數傳送點贊請求。
介面4 退出登入:為了不影響瀏覽器的測試環境,我們需要退出登入將環境恢復到測試前。
如下圖
若API文件已建立了相關的介面,在自動化普通UI模式下可以批量新增已有介面
接下來我會依次介紹如何處理複雜的引數、對返回值匹配、將上一個介面返回值作為請求引數值等等。
對請求引數進行處理
登入介面,我使用eoLinker內建的加密方法對請求引數userPassword進行MD5加密。
在請求前程式碼注入裡,僅需要了解一些簡單的物件賦值、for迴圈語法你就可以使用Javascript、Jquery對請求引數、請求頭部等操作自如。
對返回引數進行匹配
對於介面2,我需要先對返回值進行判斷,再決定自動化是否繼續,eoLinker校驗失敗時預設停止測試。 校驗規則:
- statusCode為字串000000
- 列表中的第一個元素是中國隊,teamID為數字1
eoLinker填寫的校驗規則:
填寫匹配規則的過程中需要注意型別(string、int、boolean、float、array、object)以及層級關係。
上一個請求的返回值作為本次請求的請求引數
點贊喜歡的球隊時,需要傳遞上一個介面返回的球隊teamID。 獲取球佇列表的返回值:
第一步,填寫介面2:獲取球佇列表的返回引數,為關聯引數提供資料結構。
選中teamList的型別(選對了型別才能準確關聯),增加子欄位操作將teamName和teamID填入。
第二步,填寫介面3:為球隊點讚的請求引數。
點選後會出現以下彈框,選中teamID。
生成繫結值。
<response[11465].teamlist[0].teamid>是eoLinker規定的關聯引數形式,使用單書名號包裹的返回值response[介面的關聯ID(可在單例列表進行檢視)].子引數。因為返回值的子引數teamList是陣列,所以需要加元素序號,第一個元素為0,以此類推。關聯引數可以在請求頭部、請求體(form-data、raw),REST引數中使用。
測試報告
使用普通UI自動化模式,只需要動動滑鼠就可以完成一系列的業務流程測試,生成詳細的測試報告。
eoLinker,高效、專業、規範,讓介面管理更加簡單!
官方網站:www.eolinker.com