一、什么是接口測試
我們要想知道接口測試怎么做,首先要明白接口測試是什么?一般像系統(tǒng)內(nèi)的組件接口數(shù)據(jù)交互測試、不同系統(tǒng)與系統(tǒng)之間的接口數(shù)據(jù)交互測試等,我們都可以稱之為接口測試
?!
那么接口測試是怎么來測試接口的呢?
接口測試就是通過接口的不同情況下的輸入和與之對用的輸出之間的關系,看看是否滿足接口規(guī)范所規(guī)定的功能性、安全性以及性能方面的要求.
簡單的說:“接口測試是就是在沒有前端頁面或者前端還沒完成的情況下,代替前端頁面或者第三方使用者,來驗證后端的接口實現(xiàn)是否符合接口規(guī)范?!?/p>
二、接口測試的好處
- 通過接口測試,我們可以測試出接口的穩(wěn)定和正確性, 可以拋開前端的影響,迅速定位到后端的缺陷,提升測試的效率.
- 通過接口測試, 可以為項目帶來高效的缺陷監(jiān)測和管理能力,可以提到軟件的整體質(zhì)量;
項目越復雜,系統(tǒng)越龐大,接口測試使用的越頻繁的效果越明顯
三、接口測試的原理
通過模擬客戶端?or?Web瀏覽器向服務器發(fā)送請求
,服務器接收請求后對接收到的數(shù)據(jù)做處理,同時向客戶端返回應答,我們模擬的客戶端,接收到返回的數(shù)據(jù)后再對數(shù)據(jù)進行判斷 ,如何判斷呢?
1、判斷請求: 是否正確, 系統(tǒng)默認的請求成功,會返回200狀態(tài)碼, 假如請求錯誤返回400, 404, 500等狀態(tài)碼
2、判斷數(shù)據(jù): 返回數(shù)據(jù)的正確性與完整性
3、判斷安全性: 接口一般不會隨意暴露在網(wǎng)上被其他人任意調(diào)用,一般我們會對接口做出一些限制,比如請求次數(shù)、請求頻率限制等等
簡單來說:找個能聯(lián)網(wǎng)的工具根據(jù)接口文檔,向接口服務器發(fā)送請求,獲取響應,檢查響應是否符合接口文檔的規(guī)范
四、接口測試測試工具
接口測試需要模擬客戶端發(fā)送請求獲取響應,所以我們就需要一個能夠發(fā)送請求獲取響應的工具,也就是聯(lián)網(wǎng)工具:
通過工具來進行接口測試
最知名的就是postman,當然還有restclient之類的 。當然也可以用jmeter,jmeter也可以用來做接口性能測試,當然我們也可以通過編寫腳本(代碼)進行接口測試。
一般我們使用python語言中最流行的聯(lián)網(wǎng)庫requests
?!
五、如何做好接口測試
接口測試要遵循一些要點:
-
- 測試接口的功能實現(xiàn). 檢查不同參數(shù)的數(shù)據(jù)請求時,接口返回的數(shù)據(jù)與預期結(jié)果也就是接口文檔的規(guī)范的一致性.
- 測試接口的健壯性(容錯性), 比如說傳遞的數(shù)據(jù)類型是錯誤或者傳遞空數(shù)據(jù),特殊字符等與接口規(guī)范不符的能否正常處理.
- 測試接口參數(shù)的邊界值. 比如說傳遞的數(shù)據(jù)超出了接口規(guī)范的規(guī)定的范圍,或者數(shù)據(jù)足夠大或者為負數(shù)時能否正常處理
- 測試接口的性能, 接口處理和響應數(shù)據(jù)的時間,并發(fā)性等等, 當然這牽扯到代碼實現(xiàn)的優(yōu)化,需要與開發(fā)人員溝通
- 測試接口的安全性.比如登錄的用戶名密碼等敏感數(shù)據(jù)是否明文顯示,需要權限的接口是否暴露在外面
?
六、接口測試流程
1、分析接口文檔和需求文檔
分析接口文檔或者需求文檔一般會去找測試點,那么接口測試的測試點我們一般從幾種方向去找
· 功能性測試點
· 性能測試點
· 安全性測試點
2、編寫接口測試計劃
測試計劃就是功能測試計劃基本一樣就是知名的5w1h了
1) why——為什么要進行接口測試;
2) what—測試接口包括哪些;
3) when—測試接口不同階段的起止時間;
4) where—相應接口文檔,接口缺陷的存放位置,測試環(huán)境等;
5) who—項目有關人員組成,哪些接口分配給哪些人;
6) how—使用哪些測試工具以及測試方法進行測試。
3、編寫接口測試用例
測試用例就是根據(jù)具體的哪個接口來編寫,一般會分為單接口和多接口兩種場景來編寫測試用例
1) 單接口場景的測試
-
正向數(shù)據(jù):也就是能正常發(fā)送請求,正常獲取響應的數(shù)據(jù),一般我們從三個方面去組織:
- 所有必填參數(shù)
- 全部參數(shù)(必填參數(shù)+選填參數(shù))
- 參數(shù)組合(必填參數(shù)+某些選填參數(shù))
-
反向測試:用不屬于規(guī)定范圍的數(shù)據(jù)區(qū)發(fā)送請求檢查服務器能否正常處理
- 異常數(shù)據(jù):數(shù)據(jù)為空,長度過多或者過少(邊界值外),類型不符(需要數(shù)字類型傳遞str類型),錯誤的數(shù)據(jù)
- 異常的參數(shù):不傳參數(shù),少傳參數(shù),多傳參數(shù),傳遞錯誤的參數(shù)
- 異常的業(yè)務數(shù)據(jù):結(jié)合業(yè)務功能考慮輸出的各種異常返回情況
2) 多接口場景的測試
- 業(yè)務場景功能測試(站在用戶角度考慮常用的使用場景)
- 多業(yè)務場景功能測試主要是測試接口之間數(shù)據(jù)依賴
4、接口測試執(zhí)行
根據(jù)設計的測試用例就可以執(zhí)行測試用例當然執(zhí)行的方式有幾種
1. 使用postman之類的工具,一個一個進行測試,這種方式我們叫做手工測試
2. 使用jmeter之類的有自動化功能方式進行測試,這種叫做工具自動化測試
3. 我們可以自己編寫測試腳本,使用測試腳本自動加載測試,這種就是自動化測試了
5、生成接口測試報告。
- 測試完成了以后就可以生成測試報告了
如果文章對你有幫助,麻煩伸出發(fā)財小手點個贊,感謝您的支持,你的點贊是我持續(xù)更新的動力。
上面這些是我的收集和整理,這些資料,對于【軟件測試】的朋友來說應該是最全面的倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你,點擊下方下卡片免費領取
?文章來源地址http://www.zghlxwxcb.cn/news/detail-730057.html文章來源:http://www.zghlxwxcb.cn/news/detail-730057.html
?
到了這里,關于接口測試到底要怎么測?詳細介紹接口測試的流程和步驟的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!