
導(dǎo)讀:
接口測(cè)試的方式有很多,比如可以用工具(jmeter,postman)之類,也可以自己寫(xiě)代碼進(jìn)行接口測(cè)試,工具的使用相對(duì)來(lái)說(shuō)都比較簡(jiǎn)單,重點(diǎn)是要搞清楚項(xiàng)目接口的協(xié)議是什么,然后有針對(duì)性的進(jìn)行選擇,甚至當(dāng)工具不太適合項(xiàng)目時(shí)需要自己進(jìn)行開(kāi)發(fā)。
在我們項(xiàng)目的初期,我們采用的是jmeter進(jìn)行接口測(cè)試,當(dāng)時(shí)覺(jué)得這個(gè)工具上手簡(jiǎn)單,團(tuán)隊(duì)成員學(xué)習(xí)成本低,并且接口測(cè)試的腳本稍微調(diào)整一下還可以用來(lái)做性能測(cè)試。
為了讓大家能更加深入的掌握接口測(cè)試,很早就在打算寫(xiě)些簡(jiǎn)單的使用代碼方式來(lái)做接口測(cè)試的入門教程,因?yàn)樽约簞?dòng)手寫(xiě)代碼有很多問(wèn)題需要你自己去處理,比如session如何保存,接口依賴如何處理,case如何管理及執(zhí)行順序,測(cè)試數(shù)據(jù)如何管理等等題,這個(gè)過(guò)程也有助于我們更加深刻的理解接口測(cè)試和http協(xié)議。好了,廢話了這么多,下面我們開(kāi)始吧。
本文主要采用python語(yǔ)言,python中http協(xié)議接口相關(guān)的庫(kù)有urllib,urllib2以及reqeusts庫(kù),這其中reqeusts庫(kù)用來(lái)起來(lái)最方便,因此我也主要采用requests庫(kù)來(lái)做http協(xié)議的接口測(cè)試。首先來(lái)看下需要哪些環(huán)境信息:
一、安裝python
mac下自帶安裝了python,這個(gè)不多說(shuō)了。
二、安裝虛擬環(huán)境
我們?cè)谝慌_(tái)機(jī)器上可以安裝多個(gè)python版本,為了使每個(gè)版本的環(huán)境相互不受干擾,可以安裝虛擬環(huán)境,安裝方法如下:
1、安裝virtualenv:pip install virtualenv
2、新建名為venv的虛擬環(huán)境:virtualenv venv
3、進(jìn)入新環(huán)境:source venv/bin/activate
4、退出:deactivate
三、安裝requests庫(kù)
>>>pip install requests
ps:用python做http協(xié)議的接口測(cè)試會(huì)用到這個(gè)庫(kù)。
四、http測(cè)試工具
一個(gè)使用 Python + Flask 編寫(xiě)的 HTTP 請(qǐng)求和響應(yīng)服務(wù),該服務(wù)主要用于測(cè)試 HTTP 庫(kù)。后續(xù)測(cè)試我們都基于這個(gè)網(wǎng)站。
五、在本地搭建httpbin
考慮到測(cè)試時(shí)要不斷訪問(wèn) httpbin 網(wǎng)站,請(qǐng)求過(guò)多擔(dān)心被拉到黑名單,我們自己在本志搭建一套httpbin服務(wù)。
1、安裝:pip install gunicorn
2、安裝:pip install httpbin
3、啟動(dòng):gunicorn httpbin:app
至此,環(huán)境搭建已經(jīng)完畢,可以開(kāi)始玩了~創(chuàng)建了一個(gè)測(cè)試交流群,如果對(duì)軟件測(cè)試、接口測(cè)試、自動(dòng)化測(cè)試、面試經(jīng)驗(yàn)交流感興趣可以加測(cè)試交流群:829792258,還會(huì)有同行一起技術(shù)交流