一蟹地、介紹
postman是接口調(diào)試之利器仙畦,以chrome插件形式可以通過Chrome的應(yīng)用商店進(jìn)行搜索并安裝(不過官方已經(jīng)在2017年宣布不在維護(hù)chrome版本了钩骇,大家還是安裝native版本吧)酪刀,或者找行政小姐姐文慧借用硬盤眨猎,里面有postman的原生客戶端卜高,打開一路next就安裝好了弥姻,再注冊(cè)一下就可以盡情的蹂躪啦~ (登錄后會(huì)自動(dòng)同步你的數(shù)據(jù),所有不要吝嗇掺涛,注冊(cè)是值得的)
優(yōu)點(diǎn):
門檻低上手快庭敦,支持用例管理
支持抓包、保存歷史記錄薪缆、多終端同步用例
支持批量運(yùn)行秧廉、定時(shí)運(yùn)行
自帶各種代碼模塊,支持用例的導(dǎo)出拣帽、導(dǎo)入
對(duì) web 接口測(cè)試支持友好(通過簡(jiǎn)單配置即可完成斷言疼电、上下文依賴、測(cè)試報(bào)表等)
有網(wǎng)頁版减拭,數(shù)據(jù)可同步蔽豺,使得一次運(yùn)行隨處可見
有網(wǎng)頁版,且賬戶有分組體系拧粪,方便團(tuán)隊(duì)協(xié)同
可實(shí)現(xiàn)環(huán)境路由
支持工具或腳本擴(kuò)展
官網(wǎng)教程比較良心
缺點(diǎn):
有自己的語法規(guī)則修陡,高級(jí)操作有一定的學(xué)習(xí)成本(不過有官方文檔,上手仍然很快)
部分良心擴(kuò)展是收費(fèi)的
好了既们,廣告就到這里濒析,開擼!
啟動(dòng)過后就是下圖的樣子啥纸,左邊是用來管理用例的目錄結(jié)構(gòu)号杏,右邊是具體某個(gè)用例的請(qǐng)求內(nèi)容的參數(shù)及響應(yīng)內(nèi)容;打開之后會(huì)默認(rèn)會(huì)自帶一個(gè)demo項(xiàng)目叫“Postman Echo”,里面有各種場(chǎng)景的用例盾致,有興趣的同學(xué)可以通過查看這些demo用例來學(xué)習(xí)如何使用POSTMAN主经。
關(guān)于界面介紹,這位同學(xué)寫的很詳細(xì)庭惜,感興趣的同學(xué)可以看看罩驻。
噢,插一句护赊,用慣了插件版的同學(xué)可能比較習(xí)慣之前的黑色主題惠遏,而客戶端這個(gè)默認(rèn)是白色的,大家可以在工具——設(shè)置——Themes中進(jìn)行設(shè)置噢
二骏啰、請(qǐng)求
1.新建測(cè)試集节吮、文件夾、請(qǐng)求用例
Postman測(cè)試管理的單位是測(cè)試集(Collections)判耕,測(cè)試集內(nèi)可以創(chuàng)建文件夾(Folder)和具體的請(qǐng)求(Requests)透绩。要寫用例說先第一步把架子搭好,直接點(diǎn)擊左邊欄上面的添加目錄圖標(biāo)來新增一個(gè)測(cè)試集(collections)壁熄,這樣就等于新建了一個(gè)項(xiàng)目帚豪,我們可以把一個(gè)項(xiàng)目或一個(gè)模塊的用例都存放在這個(gè)集中;然后在測(cè)試集之下我們還可以再建立文件夾(folder)來進(jìn)行功能用例的細(xì)分(點(diǎn)擊用例集右側(cè)的
——選擇“Add Folder”完成文件夾的創(chuàng)建)草丧。
創(chuàng)建了項(xiàng)目目錄后我們就可以新建用例了狸臣,具體是點(diǎn)擊右側(cè)區(qū)域的+號(hào)來新增一個(gè)空用例的模板,也可以通過復(fù)制一個(gè)已有用例來達(dá)到新建一個(gè)用例的目的方仿,2種方法見下:
2固棚、添加請(qǐng)求信息
用例建好了請(qǐng)求內(nèi)容還是空的,我們首先需要添加相應(yīng)的請(qǐng)求信息仙蚜,這部分的操作都在右側(cè)的信息區(qū)域此洲,一般流程如下:
? ? (1)選擇一個(gè)請(qǐng)求方法,如:get或post
(2)填寫請(qǐng)求的url委粉,如:http://www.baidu.com
? ? (3)如果是get則請(qǐng)求參數(shù)直接寫在url后呜师,用?連接贾节,如果是post則請(qǐng)求添加在body中
? ? (4)點(diǎn)擊“send”發(fā)送請(qǐng)求
? ? ?(5)查看請(qǐng)求響應(yīng)內(nèi)容
post請(qǐng)求參數(shù)
post請(qǐng)求的主要的特點(diǎn)是把請(qǐng)求數(shù)據(jù)放在body中汁汗,而非url后
上面的樣例是post方式傳輸普通參數(shù),如果我們需要發(fā)送帶文件的請(qǐng)求時(shí)栗涂,就要改下請(qǐng)求格式了知牌,具體如下:
注意標(biāo)紅框的內(nèi)容,都要對(duì)應(yīng)上斤程。
3角寸、授權(quán)Authorization?本節(jié)參考:https://segmentfault.com/a/1190000012056247
下面講解幾種常用的認(rèn)證方式。
No Auth,默認(rèn)選中,不需要認(rèn)證扁藕;
Bearer Toker,填寫Token進(jìn)行驗(yàn)證沮峡;
Basic Auth,基礎(chǔ)身份認(rèn)證,輸入用戶名和密碼亿柑,直接明文發(fā)送數(shù)據(jù)邢疙,點(diǎn)擊Preview Request按鈕或直接send,會(huì)自動(dòng)在Headers中生成authorization header.
Digest Auth,摘要認(rèn)證。消息摘要式身份認(rèn)證是在基本身份認(rèn)證上面擴(kuò)展了安全性望薄,服務(wù)器為每一個(gè)連接生成一個(gè)唯一的隨機(jī)數(shù)疟游,客戶端用這個(gè)隨機(jī)數(shù)對(duì)密碼進(jìn)行MD5加密,然后返回服務(wù)器痕支,服務(wù)器也用這個(gè)隨機(jī)數(shù)對(duì)密碼進(jìn)行加密乡摹,然后和客戶端傳送過來的加密數(shù)據(jù)進(jìn)行比較,如果一致就返回結(jié)果
客戶端請(qǐng)求資源->服務(wù)器返回認(rèn)證標(biāo)示->客戶端發(fā)送認(rèn)證信息->服務(wù)器查驗(yàn)認(rèn)證
OAuth 2.0,一個(gè)開放授權(quán)協(xié)議采转。支持獲得OAuth 2.0 token并添加到requests中。關(guān)于OAuth 2.0 token瞬痘,這位老師寫的比較專業(yè)并且也易懂故慈,推薦給大家:http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
4、添加頭信息
有些時(shí)候請(qǐng)求時(shí)還需要一些特定的頭信息框全,postman同樣可以完美支持察绷,直接點(diǎn)擊Headers標(biāo)簽就可以進(jìn)行請(qǐng)求頭的信息設(shè)置
5、預(yù)處理
預(yù)處理主要是對(duì)一些環(huán)境變量之類的進(jìn)行設(shè)置津辩,相當(dāng)于數(shù)據(jù)初始化拆撼;代碼能力不強(qiáng)也沒關(guān)系,片段都配好了放在右邊喘沿,直接點(diǎn)擊就會(huì)自動(dòng)生成代碼闸度。
根據(jù)實(shí)際需求,對(duì)以上操作相應(yīng)的配置進(jìn)行設(shè)置后蚜印,點(diǎn)擊請(qǐng)求地址后面的【Send】就可以發(fā)起請(qǐng)求啦莺禁。
三、響應(yīng)
請(qǐng)求發(fā)送后窄赋,就可以看到形如下面的響應(yīng)了哟冬。
右上角顯示的是響應(yīng)HTTP狀態(tài)碼、請(qǐng)求的耗時(shí)以及大幸浯隆浩峡;需要注意區(qū)分此狀態(tài)碼與正文中的狀態(tài)碼,HTTP狀態(tài)碼200代表接口請(qǐng)求正確(HTTP協(xié)議定的)错敢,而響應(yīng)正文的狀態(tài)碼是程序員自己定義的翰灾,可以是任意值,是為了讓接口使用者去區(qū)分正常數(shù)據(jù)與異常數(shù)據(jù)。
正文中pretty顯示格式化后的Json预侯;raw是未經(jīng)處理的數(shù)據(jù)致开,preview可預(yù)覽HTML頁面。
四萎馅、其他
1双戳、關(guān)于變量
Postman中有Global(全局)、Enviroment(環(huán)境)糜芳、Local(局部)飒货、Data(數(shù)據(jù))四種變量,優(yōu)先級(jí)從高至低為:Data ---- > Local ---- > Enviroment ---- > Global峭竣。
變量在postman中的使用為{{variableName}}塘辅,當(dāng)postman解析變量時(shí),字符串{{variableName}}會(huì)被替換為相應(yīng)的值皆撩。
舉個(gè)栗子:在一個(gè)環(huán)境變量中url的值被定義為http://www.baidu.com扣墩; 然后使用{{url}}為地主進(jìn)行訪問,結(jié)果依然是訪問的http://www.baidu.com扛吞。
2呻惕、導(dǎo)出用例為代碼
Postman還有一個(gè)棒棒的地方就是導(dǎo)出用例為CODE,即如果你編寫好了用例之后可以通過點(diǎn)擊屏幕右側(cè)的【Code】來一鍵生成代碼滥比,并且還有好多語言和類庫可以選擇亚脆。
3、批量執(zhí)行用例
接下來介紹POSTMAN的批量執(zhí)行功能盲泛,這個(gè)功能由單獨(dú)的runner來負(fù)責(zé)濒持,我們需要在另外的界面進(jìn)行操作,具體如下:
依次點(diǎn)擊上面的按鈕就會(huì)出現(xiàn)runer界面寺滚,如下直接點(diǎn)擊最下面的“run 測(cè)試集名字”就好了柑营。
4、環(huán)境配置
最后上一個(gè)比較好用的功能村视,大家都知道我們的測(cè)試環(huán)境往往會(huì)有多套由境,那怎么辦呢,我們不能這個(gè)環(huán)境用例寫完蓖议,然后再另外一個(gè)環(huán)境重新來一次吧虏杰?顯然這種辦法很不招人喜歡,可喜的是偉大的postman早就想到了這個(gè)問題勒虾。postman提供了環(huán)境變量的設(shè)置以滿足不同測(cè)試環(huán)境的需求纺阔,如圖,選擇右上角工具圖標(biāo)修然,進(jìn)入 Management Environments笛钝,點(diǎn)擊Add新增環(huán)境(點(diǎn)擊環(huán)境名稱可以再次進(jìn)行編輯)质况。以例子來說,我們創(chuàng)建了兩個(gè)環(huán)境玻靡,分別給兩個(gè)環(huán)境的url配置不同的地址结榄,再使用的時(shí)候根據(jù)環(huán)境的切換,url的值就會(huì)發(fā)生變化囤捻,這樣就達(dá)到了地址切換的效果臼朗。
?今天主要介紹postman的一些基礎(chǔ)使用方法,相關(guān)技巧的使用請(qǐng)見下回分解
小葵花課堂今天就上到這里蝎土,下課视哑。。誊涯。
PS:你用或者不用挡毅,postman就在那里,關(guān)于postman的學(xué)習(xí)資料很多暴构,我只是大自然的搬運(yùn)工~