一、為什么要進行接口測試
????????在分層測試中,單元測試→接口測試→UI測試 (這種簡單分層)下,在接口層是最有價值做自動化測試。
一來,單元測試(測試開發(fā)主流testng)對代碼技術(shù)含量比較高,這需要代碼命名要規(guī)范(詳見阿里的各種研發(fā)代碼軍規(guī)),可想而知,代碼命名不規(guī)范,代碼review的成本越高,如果沒法分析代碼結(jié)構(gòu),代碼風險如何控制?如下的代碼注解又有幾個公司能做到,可想而知,測試開發(fā)的工作量
二來,UI層的測試工作量比較繁重,在產(chǎn)品質(zhì)量中,越早發(fā)現(xiàn)問題,成本越低,版本迭代次數(shù)過多,測試質(zhì)量越差。
那么接口測試的技術(shù)含量:當接口框架選型定后,后者已經(jīng)出了一個接口測試模板或案例,其實也沒啥技術(shù)含量,一般需要用到j(luò)ava基礎(chǔ)(不代表java能力)、正則、sql(表設(shè)計的越復雜,對sql要求越高,子表聯(lián)查都是必備技能)
正則:一般就需要兩組正則


java進行二次開發(fā):
例如:

二、接口自動化測試應該做到什么樣
什么是自動化:減少重復的勞動力
為什么要自動化:提高效率,回家吃晚飯
接口自動化該做哪些內(nèi)容:接口的可用性、健壯性
所謂可用性:接口傳參正常的情況下,返回的數(shù)據(jù)正確
所謂健壯性:接口定義的時候,驗證后端開發(fā)是否處理了異常情況(根據(jù)接口文檔模擬數(shù)據(jù)驗證)
三、如何利用jmeter做單接口或接口鏈路的可用性和健壯性測試
單接口測試:準確的說,幾乎所有業(yè)務上都不會存在單接口測試(存在某個接口可以單接口測試)
接口鏈路測試(非壓測):參照下圖的說明(如果是上個接口需要傳值給下個接口,可以在json數(shù)據(jù)校驗的代碼中用正則匹配,并傳遞給下個接口,這邊不做案例說明)