接口測試重點和難點總結


什么是接口測試?

定義:接口測試是測試系統組件間接口的一種測試。接口測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的交互點。測試的重點是檢查接口參數傳遞的正確性,接口功能實現的正確性,輸出結果的正確性,對各種異常情況的容錯處理的完整性和合理性,以及不用接口間的相互依賴關系等。

為什么要做接口測試?

1、接口測試位於測試的前期階段,越早接入測試,發現問題的成本越低。
2、接口測試相對容易實現自動化持續集成,且相對UI自動化也更加穩定,可以減少回歸測試人力成本與時間,縮短測試周期,支持后端快速迭代需求。接口持續集成是為什么能低成本高收益的根源。
3、現在多數系統采用前后端分離架構,從安全層面來說:
a.  為防止直接繞過前端,在篡改請求數據后發起請求,所以前后端有時需要進行同樣進行校驗,在這種情況下就需要從接口層面進行驗證。
b.  前后端敏感數據傳輸、日志打印等信息是否加密傳輸也是需要驗證的,特別是涉及到用戶的隱私信息,如姓名、手機號、身份證、銀行卡、登錄密碼等。
 

企業一般什么時候需要做接口測試?

a、項目初期,后端接口已開發完成,前端還沒有開發完成,一般要做接口測試,校驗后端邏輯。
b、版本迭代,項目新增需求,后端新開接口,需要做接口測試。
c、版本迭代,后端修改了接口,需要做接口測試。
 

接口測試需要具備的基本知識或能力

1、懂接口文檔分析,會設計接口測試用例
2、懂常用協議,如http、 https
3、熟練使用一種接口測試工具,並能靈活運用,這里推薦JMeter(適合接口自動化)、Postman(適合接口調試)
4、會一門編程語言,推薦Java、Python3,有一定腳本調試能力。
 

如何做接口測試?

這就涉及到接口測試的具體流程:
1、找后端開發拿到接口文檔,后端開發一般會使用swagger、smart-doc、Eolinker等工具在線生成接口文檔。如果沒有接口文檔,可以使用瀏覽器F12 或 抓包工具Fillder抓取接口,自己編寫接口文檔。
2、熟悉需求說明書,分析接口文檔。
3、編寫接口測試用例或腳本。
4、進行接口測試,校驗響應數據。
5、分析測試結果,編寫接口測試報告。
 

標准的接口文檔應該是什么樣子?

標准的接口文檔應該具備:接口名稱、接口地址、請求方式、請求參數說明、請求示例、響應數據格式、響應參數說明、響應示例等。示例如下:
接口名稱:查詢用戶手機號歸屬地
接口地址:http://apis.juhe.cn/mobile/get
響應格式:json/xml
請求方式:get
請求示例:http://apis.juhe.cn/mobile/get?phone=13429667914&key=您申請的KEY
接口備注:您也可以通過 https://www.juhe.cn/market/product?id=10015 下載歸屬地離線數據包
請求參數說明:
 
響應參數說明:
 

 

JSON響應示例:

{ "resultcode":"200", "reason":"Return Successd!", "result":{ "province":"浙江", "city":"杭州", "areacode":"0571", "zip":"310000", "company":"中國移動", "card":"" } }

 

接口測試的重點和難點是什么?

1、會分析接口文檔。(重點)
2、對前、后台的數據交互過程、后端業務處理邏輯非常清楚。(難點)
3、對關聯接口,要清楚接口之間的數據依賴關系。(難點)
4、工具的靈活使用。(重點)
 

接口測試用例設計,需要考慮哪些點?

換句話說,接口測試,需要測試什么呢?下面給大家畫了一個思維導圖,便於理解和記憶。

 

 說明:一般測試需要在開發編碼階段完成接口用例設計或接口測試腳本開發。對測試用例需要進行定期review,隨着對系統認識的加深,可以不斷提高用例或腳本精度。另外,一旦測試需求發生變化,測試用例或腳本必須重新維護。

接口質量評估標准有哪些?

1、業務功能覆蓋是否完整

2、業務規則覆蓋是否完整

3、參數驗證是否達到要求

4、接口異常場景覆蓋是否完整

5、接口覆蓋率是否達到要求

6、代碼覆蓋率是否達到要求(這個可以讓運維部署靜態代碼分析工具,如sonar解決)

7、性能指標是否滿足要求

8、安全指標是否滿足要求

接口測試持續集成

持續集成接口自動化測試是核心內容,只有做到持續集成才能真正做到低成本高收益。目前我們已經實現了接口自動化,主要應用於回歸階段,后續還需要提高自動化的程度,包括但不限於下面的內容:

1、流程方面:在回歸階段提高接口異常場景的覆蓋度,並逐步向系統測試,冒煙測試階段延伸,最終達到全流程自動化。

2、問題定位:報錯信息、日志更精准,方便問題復現與定位。

3、結果校驗:加強自動化校驗能力,如數據庫信息校驗。

4、結果展示:更加豐富的結果展示、趨勢分析、質量統計和分析等。

5、代碼覆蓋率:不斷嘗試由目前的黑盒向白盒下探,提高代碼覆蓋率。

6、性能需求:完善性能測試體系,通過自動化的手段監控接口性能指標是否正常。

以上內容都需要一個展示平台,所以,自動化測試平台的開發將成為趨勢。

說明:本文部分內容引用自 https://www.cnblogs.com/xiaowenshu/p/10346903.html ,轉載需說明出處,謝謝!


 

 

 

 
 
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM