無需編寫程式碼,API業務流程測試,零程式碼實現

吳億歐發表於2018-07-10

引言

除了測試單個介面,我們常常需要對多個有資料或者邏輯關聯的介面進行業務流程測試,例如獲取驗證碼-註冊-登入。傳統測試業務流程需要編寫一系列測試程式碼,現在通過eoLinker全UI介面,無需編寫任何程式碼即可完成稍複雜的API測試。

關鍵詞

流程化測試、自動化測試、資料關聯

填寫完介面文件後,我們往往要對多個有資料或者邏輯關聯的介面進行API業務測試。精彩世界盃火熱進行,現以為支援球隊點贊業務來舉個例子:

介面1 登入:在進行測試前我們需要先登入,將其返回的token欄位作為後續介面的請求頭欄位。

介面2 獲取球佇列表:點贊之前我們需要先請求球佇列表陣列。

介面3 為球隊點贊:將上一個介面的球隊ID作為請求引數傳送點贊請求。

介面4 退出登入:為了不影響瀏覽器的測試環境,我們需要退出登入將環境恢復到測試前。

如下圖

image.png

image.png

若API文件已建立了相關的介面,在自動化普通UI模式下可以批量新增已有介面

接下來我會依次介紹如何處理複雜的引數、對返回值匹配、將上一個介面返回值作為請求引數值等等。

對請求引數進行處理

登入介面,我使用eoLinker內建的加密方法對請求引數userPassword進行MD5加密。

image.png

在請求前程式碼注入裡,僅需要了解一些簡單的物件賦值、for迴圈語法你就可以使用Javascript、Jquery對請求引數、請求頭部等操作自如。

對返回引數進行匹配

對於介面2,我需要先對返回值進行判斷,再決定自動化是否繼續,eoLinker校驗失敗時預設停止測試。 校驗規則:

  • statusCode為字串000000
  • 列表中的第一個元素是中國隊,teamID為數字1

eoLinker填寫的校驗規則:

image.png

填寫匹配規則的過程中需要注意型別(string、int、boolean、float、array、object)以及層級關係。

上一個請求的返回值作為本次請求的請求引數

點贊喜歡的球隊時,需要傳遞上一個介面返回的球隊teamID。 獲取球佇列表的返回值:

image.png

第一步,填寫介面2:獲取球佇列表的返回引數,為關聯引數提供資料結構。

image.png

選中teamList的型別(選對了型別才能準確關聯),增加子欄位操作將teamName和teamID填入。

第二步,填寫介面3:為球隊點讚的請求引數。

image.png

點選後會出現以下彈框,選中teamID。

image.png

生成繫結值。

image.png

<response[11465].teamlist[0].teamid>是eoLinker規定的關聯引數形式,使用單書名號包裹的返回值response[介面的關聯ID(可在單例列表進行檢視)].子引數。因為返回值的子引數teamList是陣列,所以需要加元素序號,第一個元素為0,以此類推。關聯引數可以在請求頭部、請求體(form-data、raw),REST引數中使用。

測試報告

使用普通UI自動化模式,只需要動動滑鼠就可以完成一系列的業務流程測試,生成詳細的測試報告。

image.png

eoLinker,高效、專業、規範,讓介面管理更加簡單!

官方網站:www.eolinker.com

相關文章