一、什么是接口測試
1.為什么做接口測試:
接口是連接前后端及移動端的;不同端的工作進(jìn)度不一樣,需要對最開始出來的接口進(jìn)行接口測試,優(yōu)點:節(jié)約時間,縮短項目時間;提高工作效率;提高系統(tǒng)的健壯性。



post與get接口類型差異:
參數(shù)提交方式:post請求的數(shù)據(jù)是放在WebForm里面的,以表單形式提交;get是通過地址欄提交數(shù)據(jù)的。
請求數(shù)據(jù)大?。簆sot大,get小
安全性:post以表單形式提交更安全,get相對不是很安全
二、接口測試流程
1.接口測試流程


2.測試用例
編寫測試用例目的:
理清思路,避免漏測;
提高測試效率;
跟進(jìn)測試進(jìn)度;
測試記錄;
跟進(jìn)重復(fù)性工作。
用例設(shè)計分為:
1)功能用例設(shè)計
?功能是否正常(用postman工具,輸入請求參數(shù)及相關(guān)url后,看是否可以正常發(fā)送請求)
功能是否按照接口文檔實現(xiàn)(假設(shè)接口文檔里面有兩個參數(shù);要看兩個參數(shù)是否正確)
2)邏輯業(yè)務(wù)用例設(shè)計
是否依賴業(yè)務(wù)(假如是支付業(yè)務(wù)下單時候,要測試用戶登錄是否正確是否登錄)
?3)安全
cookie(沒有登錄直接調(diào)用和下單接口可以下單就是有問題的)
header(如把header信息刪除)
唯一識別碼
4)異常測試用例設(shè)計
參數(shù)異常:(關(guān)鍵字參數(shù)、參數(shù)為空、多或少參數(shù)、錯誤參數(shù))
數(shù)據(jù)異常(關(guān)鍵字?jǐn)?shù)據(jù)、數(shù)據(jù)為空、長度不一致、錯誤數(shù)據(jù)、)
三、接口測試工具及使用
1.接口測試工具分類

使用目的:提高工作效率
選擇測試工具切入點:時間、簡易程度、業(yè)務(wù)復(fù)雜度、測試員能力
2.接口測試分類工具介紹
抓取接口工具:
httpwache的缺點:只能在IE和firefox瀏覽器里面,其他瀏覽器不支持,看數(shù)據(jù)比較麻煩。
wireshark:抓取經(jīng)過電腦的所有請求,需要添加表達(dá)式來確定請求
fiddler:輕量級的抓包,記錄所有的http請求,相對比較清晰,而且可以進(jìn)行接口測試。
測試接口工具:
loadrunner:性能測試基于http請求的。
fiddler:在Composer中可以進(jìn)行接口測試。
soapui:接口測試,自動化測試。
jmeter:性能測試工具,也可以做接口測試工具,也是基于HTTP請求做性能測試的。內(nèi)存占用小,免費開源,輕巧方便、無需安裝。
postman: 最常用接口測試,是谷歌的一款接口測試插件,支持用例管理,支持不同請求類型、文件上傳、響應(yīng)驗證、變量管理、環(huán)境參數(shù)管理等功能,可以批量運行,并支持用例導(dǎo)出、導(dǎo)入。
接口測試三劍客:????fiddler 、postman、 Python自己開發(fā)
自己開發(fā)接口測試程序原因:(工具沒法滿足需求時,業(yè)務(wù)限制,安全性)
3.fiddler工具運用
優(yōu)點:獨立可以直接抓取http請求;小巧,功能完善;快捷,啟動就行;代理方便
含義:fiddler是一個http協(xié)議調(diào)試工具,它能夠記錄并檢查所有你的電腦和互聯(lián)網(wǎng)之間的http通訊,設(shè)置斷點,查看所有的“進(jìn)出”Fiddler的數(shù)據(jù)。
工作原理:在電腦端設(shè)置了一個代理,電腦發(fā)出的所有請求都要經(jīng)過這個代理,代理收到后,再將這些請求發(fā)送給服務(wù)器,服務(wù)器處理后,再將處理后的信息返回給fiddler,最后fiddler再把數(shù)據(jù)返回給計算機(jī)。


運用:
1.查看接口請求方式;查看請求數(shù)據(jù),響應(yīng)數(shù)據(jù);接口返回狀態(tài)(200返回成功);設(shè)置代理(移動端需要設(shè)置。在工具欄--【Tools】--【Fiddler options】--【Connections】輸入端口號,并勾選后三個選項即可,之后在移動端進(jìn)行設(shè)置即可)

2.查看header和cookie圖示

3.設(shè)置斷點:

4.添加篩選:

5.進(jìn)行接口測試

4.postman工具的運用

優(yōu)點:可以自動反復(fù)測試一個需要攜帶header的post請求,并且對針對線上、測試環(huán)境同一個數(shù)據(jù)進(jìn)行測試,并對實際結(jié)果作比較,以作為測試結(jié)果。
配置不同環(huán)境步驟:
【設(shè)置】--【添加】--【配置環(huán)境的url或者標(biāo)識】



主要使用優(yōu)點:
1.能添加header和cookie。cookie的添加也是在header欄。
2.多接口一起使用。?(可以配置測試環(huán)境和線上環(huán)境)?
3.方便回歸。(可以批量執(zhí)行一個文件夾的所有接口)
4.提高開發(fā)語言的技能水平。點擊右邊的code可以選擇編程語言,生成對應(yīng)語言的http請求的代碼,方便學(xué)習(xí)。

四、接口測試簡單實踐
1.python-get接口實踐

python-get請求實現(xiàn)方式:
1.定義接口地址
2.定義請求數(shù)據(jù)
3.整理請求數(shù)據(jù)
4.發(fā)送數(shù)據(jù)并獲取結(jié)果

如果使用python3以上的版本的話則會報錯:
? File "F:/MYSOFT/pyCharm/untitled/test.py", line 3, in <module>
? ? import urllib2
ModuleNotFoundError: No module named 'urllib2'

解決辦法:
在3以后用urllib.request代替urllib2
?用urllib.parse代替 urllib.urlencode

2.python-post接口實踐

