標籤:md5 asc register 技術 完成 自動化 https orm 添加
引言
作為開發人員,有時需要協助市場部門進行開發,比如在市場推廣中,經常通過給使用者贈送優惠券來提高複購率。這篇文章,將介紹如何使用介面管理工具 eoLinker 的自動化測試 [UI模式] 構建此商務邏輯。
關鍵詞
市場推廣、定時任務、資料關聯
接下來,我們以給使用者贈送優惠券為例進行流程的搭建。搭建完整個流程後,你會發現不再需要編寫複雜的代碼了,只需簡單幾步就能完成。
目錄
1、流程設計
2、流程調試
3、定時任務
4、使用tips
5、小結
1、流程設計
我們先確定完成該商務邏輯需要用到的介面:
介面1 登入:最基本的登入介面,市場推廣人員登入自己的帳號。
介面2 擷取使用者列表:在發放優惠券之前,先確定使用者名稱單。
介面3 擷取優惠券列表:擷取各種類型的優惠券。
介面4 給使用者贈送優惠券:以介面2和介面3的返回結果作為請求參數。
介面5 退出登入:完成商務程序後,退出登入。
按照上面的流程設計,我建立了中的5個介面,同時調整好正確的測試順序。
介面1 的返回參數 statusCode ,我設定了4個狀態代碼,剛好對應4種可能的情況,如果有更多可能性,可以繼續補充。
若API文檔已建立了相關的介面,在自動化普通UI模式下可以大量新增已有介面。
當我們編輯好介面,完成好對資料關聯的設定,這時候只需回到自動化測試頁面,點擊“ 測試全部 ”就可以完成測試了。如何進行資料關聯的內容將會在下文介紹。
可以看到,我們完成正確的設定後,得到了成功的測試結果。
2、流程調試
在流程測試中,上一個介面的返回參數可能會是下一個介面的請求參數。這時候就需要用上 關聯資料 。比如給使用者發送優惠券,就需要傳遞上一個介面返回的優惠券 couponID 。下面通過兩個步驟來進行資料關聯:
- 第一步:擷取優惠券列表的傳回值
我們有3種不同面值的優惠券:滿100減10、滿1000減100和滿10000減1000,對應著不同 couponID 。
- 第二步:填寫介面4的請求參數
介面4的請求參數就是介面2和介面3的返回參數。
點擊後面“關聯”按鈕,會出現以下彈框,選擇要關聯的資料,比如選中了 couponID 。
產生綁定值。中 userID 和 couponID 都產生了綁定值。
<response[39677].userList.userID>參數值的格式是eoLinker規定的關聯參數形式,使用單書名號包裹的傳回值 response [介面的關聯ID(可在單例列表進行查看)].子參數。
如果傳回值的子參數是數組,那就需要加元素序號,第一個元素為0,以此類推。如couponList[0]。
關聯參數可以在 要求標頭部、請求體(form-data、raw),REST參數 中使用。
在調試中,測試報告也是十分重要的。
使用普通UI自動化模式,測試完畢後,會產生詳細的測試報告,通過查看詳情就能看到完整的測試報告。如果測試失敗了,通過測試報告也能及時進行修正。
3、定時任務
在本文的商務程序中,我們可以通過定時測試工作,讓整個流程自動執行。
首先在自動化測試的二級菜單--定時測試工作中,添加該任務。新增工作之前需要添加分組,比如這裡建立了“贈送使用者優惠券”的分組。
這裡需要填寫名稱:"給使用者贈送優惠券",時間設定“永久有效”,周期為“一周”,日期選擇“周一到周五的早10點和晚六點”,按照這樣的規則發送優惠券。
在用例列表中選擇之前設定好的用例:優惠券
確認測試環境,填寫我的郵箱,再選擇通知類型。這樣設定後,以後我們只需通過查看郵件,就可以擷取介面測試的所有情況,確保介面正常運行。
如,每次的測試曆史可以在測試工作列表下載,十分方便。
4、使用tips請求參數處理
有些參數需要在發送前進行加密,例如密碼等。在 eoLinker 中,通過代碼注入功能就可以對參數 userPassword 加密,比如
對於介面1,我使用 eoLinker 內建的加密方法對請求參數 userPassword 進行 MD5 和 SHA1 加密。
在代碼注入功能的右側導覽列,eoLinker 目前內建了包括 MD5 在內的3種加密方式,點擊就可以直接調用了。如果想用其他的加密方式,只需要瞭解一些簡單文法你就可以使用 Javascript、Jquery 代碼進行加密。當然也可以在發送前對請求參數做其他處理。
返回參數匹配
除了對請求參數進行處理外,對返回的參數也需要進行校正,在這個業務中,我們只選擇特定的使用者發送相應優惠券,這就需要通過校正來對返回的參數進行匹配。
對於介面2,我需要先對傳回值進行判斷,再決定自動化測試流程是否繼續,eoLinker校正失敗時預設停止測試。如果不想停在這裡的話,可以勾選下方的“ 該用例校正位失敗時,依然執行下一個用例 ”。這樣即便失敗也會繼續測試下去。
下面說一下校正規則
校正規則:
statusCode為字串000000
列表中的couponID是1,couponName為滿100減10
eoLinker填寫的校正規則:
填寫匹配規則的過程中,主要為參數選擇正確的類型(string、int等)以及層級關係。比如在這裡參數 couponList 和 couponID 就是不同的類型,而couponID 是 couponList 的子欄位。
5、小結
最後,完成任務退出登入,這樣一個完整的商務程序就完成了。通過自動化測試的UI模式進行商務程序測試,既不用編寫代碼,又能通過測試報告及時修正錯誤,相比傳統的測試方式極大地提高了工作效率。
eoLinker,高效、專業、規範,讓介面管理更加簡單!
更多更新內容請前往eoLinker公眾號,本文轉自eoLinker公眾號。
立即體驗:https://www.eolinker.com
無需編寫代碼,用介面管理工具 eoLinker 高效完成API測試流程相關業務