接口測試需要了解的?


1、什么是接口測試?

測試人員通常所說的“接口測試”是針對系統各組件之間接口的一種測試,它屬於功能測試。接口能測出普通界面操作難以發現的問題。如,我們都知道系統是由前端后端組成,一些數據在前端做了校驗,后端同樣也需要校驗才能保證安全,界面操作顯然只能檢查到前端校驗這一層,只有直接面對前后端之間的該接口才能檢驗出后端是否也做了校驗。

 

2為什么要做接口測試? 

a) 如今的系統復雜度不斷上升,傳統的測試方法成本急劇增加且測試效率大幅下降,接口測試可以提供這種情況下的解決方案。

 

b)  接口測試相對容易實現自動化持續集成,且相對UI自動化也比較穩定,可以減少人工回歸測試人力成本與時間,縮短測試周期,支持后端快速發版需求。接口持續集成是為什么能低成本高收益的根源。

 

c)   現在很多系統前后端架構是分離的,從安全層面來說:

 

      1、只依賴前端進行限制已經完全不能滿足系統的安全要求(繞過前面實在太容易),需要后端同樣進行控制,在這種情況下就需要從接口層面進行驗證。

 

      2、前后端傳輸、日志打印等信息是否加密傳輸也是需要驗證的,特別是涉及到用戶的隱私信息,如身份證,銀行卡等。

 

3、接口測試發現的問題?

1)可以發現很多頁面操作發現不了的問題;

2)檢查系統的異常處理能力;

3)檢查系統的安全性、穩定性;

4)前端隨便變,接口測好了,后端不用變;

 

4、接口測試的流程?

1)需求評審,熟悉業務和需求

2)開發提供接口文檔

3)編寫接口測試用例

4) 用例評審

5)提測后開始測試

6)提交測試報告

 

5接口文檔 是接口測試的參照,至少包括:

1)接口說明

2)調用url

3)請求方法(get\post ……)

4)請求參數、參數類型、請求參數說明

5)返回參數說明

 

6、接口測試用例設計

 (1)正確性驗證:首先保證接口好用,按文檔正常傳入,查看是否可以返回正確的結果。

 (2)參數組合: 按接口文檔中對參數的要求進行有目的的組合,比如必填未填是否通過,標志類參數值的切換是否能對應正確的功能等。(這部分很關鍵)   (3)接口安全: 1、繞過正常值驗證。 2、繞過身份授權驗證。 3、參數是否加密,加密規則是否容易破解。 4、密碼安全規則,密碼的復雜程度校驗。

 (4)異常驗證:不按照接口文檔上的要求輸入參數,來驗證接口對異常情況的反應。

 

7、接口測試用例模板 (可根據項目實際情況設計增減)

  1、項目 測試針對哪個項目

  2、模塊 哪個功能模塊

  3、用例id

  4、接口名稱

  5、用例標題 測試用途概括

   6、請求方式 GET/POST

  7、請求url URL地址

  8、請求參數

  9、前置條件 執行當前請求依賴的條件,不滿足就不能正確執行

  10、結果驗證 預期結果

  11、請求報文 可以不寫

  12、返回報文  一定要寫,這里應該是你請求返回的真實結果

  13、測試結果 通過/失敗

  14、測試人員

 

8測試http接口

  請求常見有Get請求和Post請求。Get請求通常用來接收數據,Post請求通常用來發送數據;測Get請求可用瀏覽器完成,參數都可以寫在URL里面,測Post請求需要借助工具如Postman,因為客戶端需要提供給服務器的信息較多,你要寫body傳輸大量數據。

   接口調用有兩種傳參方式:key-value形式,Json串傳參形式。 key-value形式可以把參數拼接在url的后面由?相連,多個參數之間用&相連;如url?parameter1=key1&parameter2=key2… ;Json串傳參不能把參數直接連在url中,需要寫在請求的body里面,可借助工具Postman,打開請求的body寫入Json格式參數(由花括號括起來的‘鍵:值’對)如 { “count”: 1, “start”: 0, “total”: 1 }

 

9我們怎么做接口測試?

  由於我們項目前后端調用主要是基於http協議的接口,所以測試接口時主要是通過工具或代碼模擬http請求的發送與接收。工具有很多如:postman、jmeter、soupUI、Java+httpclient、robotframework+httplibrary等

 


免責聲明!

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



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