Postman使用

Postman使用

9.1 postman簡介

9.1.1 什么是Postman

Postman 提供功能強(qiáng)大的 Web API 和 HTTP 請求的調(diào)試蓬网,它能夠發(fā)送任何類型的HTTP 請求 (GET, POST, PUT, DELETE…)窒所,并且能附帶任何數(shù)量的參數(shù)和 Headers。而且它還提供測試數(shù)據(jù)和環(huán)境 配置數(shù)據(jù)的導(dǎo)入導(dǎo)出帆锋,付費(fèi)的 Post Cloud 用戶還能夠創(chuàng)建自己的 Team Library 用來團(tuán)隊(duì)協(xié)作式的測 試吵取,并能夠 將自己的測試收藏夾和用例數(shù)據(jù)分享給團(tuán)隊(duì)。 從分層測試的角度來說锯厢,接口測試是必備技能皮官。常見的接口測試工具很多,如:jmeter实辑, soapui,postman等捺氢。相比較jmeter而言,postman它不僅可以調(diào)試簡單的css剪撬、html摄乒、腳本等簡單的網(wǎng) 頁基本信息,它還可以發(fā)送幾乎所有類型的HTTP請求!Postman在調(diào)試HTTP請求方面可以說是很方便的接口 測試產(chǎn)品之一馍佑。 postman適用于不同的操作系統(tǒng)斋否,還支持postman瀏覽器擴(kuò)展程序、postman chrome應(yīng)用程序等拭荤。但 是 瀏覽器插件目前Google已經(jīng)停止更新了茵臭。

9.2 Postman下載和安裝

9.2.1 Postman的下載

官網(wǎng)下載: 地址:https://www.getpostman.com/downloads/,選擇頁面中的“Download”舅世,根據(jù)自 己電腦配置旦委, 選擇32位下載還是64位下載

9.2.2 Postman的安裝過程

雙擊下載好的安裝包

因?yàn)镻ostman是免安裝的,雙擊安裝包歇终,自動安裝到本地電腦中

查看Postman界面社证,出現(xiàn)如下圖所示逼龟,說明安裝成功

登錄评凝,點(diǎn)擊進(jìn)入workspace頁面

9.3 Postman主界面的介紹

9.3.1 工具欄

image.png

9.4 Postman基本操作

9.4.1 新建測試集、文件夾腺律、請求用例

點(diǎn)擊collections奕短,點(diǎn)擊+,點(diǎn)擊create new collection

image.png

點(diǎn)擊collection右邊的三個點(diǎn),點(diǎn)擊add request是添加請求匀钧,add folder是添加文件夾

image.png

9.4.2 get請求

新建一個get請求翎碑,如圖所示

設(shè)置請求方式為get

粘貼網(wǎng)址

添加請求參數(shù),參數(shù)添加后會在url上顯示出來之斯,如圖中所示的日杈?id=1005008&page=1&size=100

如果有請求頭,在請求頭的部分添加佑刷,也是鍵值對

點(diǎn)擊send之后莉擒,下面顯示響應(yīng)數(shù)據(jù),可以是html瘫絮,json涨冀,xml...

image.png

image.png

9.4.3 post請求

提交form表單,如圖所示

接口:https://www.wanandroid.com/user/login

方法:POST

參數(shù):username麦萤,password

post請求的參數(shù)信息在Body中添加 form表單提交需要選中x-www-form-urlencoded 請求頭添加和get請求相同鹿鳖,在Headers中添加

image.png

image.png

json提交

下圖中,當(dāng)我們選擇JSON(application/json) 是會自動幫我們設(shè)置 headers 為 application/json

在這里就不截圖 舉例了

image.png

xml提交

image.png

二進(jìn)制文件提交

image.png

其它請求方式如PUT,DELETE 大致流程和GET,POST 差不多壮莹,這里就不一一舉例說明了翅帜。

9.4.4 授權(quán)Authorization

Authorization,授權(quán)就是驗(yàn)證我們是否有權(quán)限從服務(wù)器訪問所需的數(shù)據(jù)命满。發(fā)送請求時藕甩,通常必須包含參數(shù)以確保請求有權(quán)訪問并返回所需的數(shù)據(jù),比如需要登錄之后才能訪問的數(shù)據(jù)。Postman提供的授權(quán)類型可以讓我們輕松處理Postman進(jìn)行接口測試中的身份驗(yàn)證協(xié)議狭莱。

在postman中Authorization分為以下幾種類型:

image.png

注意:應(yīng)當(dāng)注意:NTLM和BearerToken僅在Postman本地應(yīng)用程序中可用僵娃。所有其他授權(quán)類型都可

以在Postman本地應(yīng)用程序和Chrome應(yīng)用程序中使用。

Inherit auth from parent

向集合或文件夾添加授權(quán)腋妙。 假設(shè)您在集合中添加了一個文件夾默怨。在授權(quán)選項(xiàng)卡下,默認(rèn)的授權(quán)類型將被設(shè)置為“從父類繼承auth”骤素。 “從父”設(shè)置的“繼承auth”指示默認(rèn)情況下匙睹,該文件夾中的每個請求都使用父類的授權(quán)類型。在本例中济竹, 該集合使用“No Auth”痕檬,因此該文件夾使用“No Auth”,這意味著該文件夾中的所有請求將使用“No Auth” 如果您希望將父集合授權(quán)類型保留為“No Auth”送浊,但要更新這個特定的文件夾的授權(quán)助手梦谜,該怎么辦呢? 您可以編輯文件夾的詳細(xì)信息,從類型下拉菜單中選擇“基本的Auth”袭景,并輸入您的憑證唁桩。因此,這個文件夾中 的每個請求都依賴于“基本的Auth”耸棒,而父集合中的其余請求仍然不使用任何授權(quán)

No Auth

默認(rèn)情況下荒澡,“No Auth”出現(xiàn)在下拉菜單列表中。當(dāng)您不需要授權(quán)參數(shù)發(fā)送請求時与殃,使用“No Auth”单山。

Bearer Token

Bearer Token是安全令牌。任何帶有Bearer Token的用戶都可以使用它來訪問數(shù)據(jù)資源幅疼,而無需使用加密 密鑰米奸。 使用Bearer Token: 第一步:從下拉菜單中選擇“Bearer Token”。 第二步:要設(shè)置請求的授權(quán)參數(shù)衣屏,請輸入令牌的值躏升。 第三步:點(diǎn)擊發(fā)送按鈕。

Basic auth

Basic Auth是一種授權(quán)類型狼忱,需要驗(yàn)證用戶名和密碼才能訪問數(shù)據(jù)資源膨疏。 使用基本身份驗(yàn)證: 第一步:從下拉菜單中選擇“Basic Auth”。 第二步:要設(shè)置請求的授權(quán)參數(shù)钻弄,請輸入您的用戶名和密碼佃却。 第三步:點(diǎn)擊發(fā)送按鈕。

Digest Auth

在“Digest Auth”流程中窘俺,客戶端向服務(wù)器發(fā)送請求饲帅,服務(wù)器返回客戶端的nonce和realm值;客戶端 對用戶名、密碼灶泵、nonce值育八、HTTP請求方法、被請求資源URI等組合后進(jìn)行MD5運(yùn)算赦邻,把計算得到的摘要信息 發(fā)送給服務(wù)端髓棋。服務(wù)器然后發(fā)回客戶端請求的數(shù)據(jù)。 通過哈希算法對通信雙方身份的認(rèn)證十分常見惶洲,它的好處就是不必把具備密碼的信息對外傳輸按声,只需將這 些密碼信息加入一個對方給定的隨機(jī)值計算哈希值,最后將哈希值傳給對方恬吕,對方就可以認(rèn)證你的身份签则。 Digest思想同樣采如此,用了一種nonce隨機(jī)數(shù)字符串铐料,雙方約好對哪些信息進(jìn)行哈希運(yùn)算即可完成雙 方身份的驗(yàn)證渐裂。Digest模式避免了密碼在網(wǎng)絡(luò)上明文傳輸,提高了安全性余赢,但它仍然存在缺點(diǎn)芯义,例如認(rèn)證報文 被攻擊者攔截到攻擊者可以獲取到資源哈垢。 默認(rèn)情況下妻柒,Postman從響應(yīng)中提取值對應(yīng)的值。如果不想提取這些值耘分,有以下兩種選擇: 在所選字段的高級部分中輸入您自己的值勾選“Yes,disable retrying the request”復(fù)選框举塔。

OAuth 1.0

OAuth 1.0是一種可以讓我們在不公開密碼的情況下授權(quán)使用其他應(yīng)用程序的授權(quán)模式。 在Postman中按照以下步驟使用OAuth 1.0授權(quán): 在Authorization下來授權(quán)標(biāo)簽中選擇“OAuth 1.0”授權(quán)模式求泰;在“Add authorization data to” 下拉選擇框中央渣,選擇對應(yīng)的請求模式。 當(dāng)選擇“Request Body/Request URL”時渴频,Postman將檢查請求方法是POST還是PUT芽丹,以及請求主體 類型是否是x-www-form-urlencoded;如果是這樣卜朗,Postman將增加授權(quán)參數(shù)到請求主體拔第。對于所有其他 情況,它會向URL添加授權(quán)參數(shù)场钉。

OAuth 2.0

OAuth 2.0作為OAuth 1.0的升級版本蚊俺。在Postman中按照以下步驟進(jìn)行使用: 在Authorization下來授權(quán)標(biāo)簽中選擇“OAuth 2.0”授權(quán)模式在“Add authorization data to” 下拉選擇框中,選擇對應(yīng)的請求模式逛万; 設(shè)置請求的授權(quán)參數(shù)泳猬,有以下三個選擇: 點(diǎn)擊“Get New Access Token”按鈕,在彈出的對話框中輸入對應(yīng)的參數(shù);單擊“Request Token”按 鈕獲取對應(yīng)的Token得封。接下來有了對應(yīng)的Token后埋心,就可以點(diǎn)擊“Send”按鈕發(fā)送請求了; 在“Access Token”輸入框中輸入一個Token忙上,或者Token對應(yīng)的環(huán)境變量踩窖,然后就可以點(diǎn)擊“Send”按 鈕發(fā)送請求了; 在“Available Tokens”下拉框中選擇已經(jīng)存在的Token晨横,然后發(fā)送請求洋腮。

案例:

//登錄https://www.liulongbin.top:8888/api/private/v1/loginpost方法參數(shù):username(admin),password(123456)//上傳圖片 https://www.liulongbin.top:8888/api/private/v1/upload post請求頭:authorization:Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOjUwMCwicmlkIjowLCJpYXQiOjE2MTU4NjI zODksImV4cCI6MTYxNTk0ODc4OX0.Rr-M1MTfVWER3i8KiIIlfP0mW6oHYu05Sz6WzCeaKSA 參數(shù):file--文件

image.png

可以給接口集

image.png

image.png

9.5 Pre-request Script--預(yù)處理腳本

Pre-request Script,翻譯中文為預(yù)處理腳本手形,是請求發(fā)送之前需要執(zhí)行的代碼片段啥供,在我們點(diǎn)擊send發(fā)起請求之前,改區(qū)域的代碼先執(zhí)行库糠。

使用場景:例如請求中包含一個隨機(jī)數(shù)或者時間戳(時間的毫秒值)伙狐,或者參數(shù)需要加密。

給一個接口添加預(yù)處理腳本:新建一個網(wǎng)絡(luò)請求瞬欧,點(diǎn)擊Pre-request Script贷屎,寫入js腳本獲取時間的毫秒值(時間戳)

image.png

2.給接口集添加預(yù)處理腳本:如圖所示,完成后以后接口集下面所有接口在請求的時候都會先執(zhí)行預(yù)請求腳本

image.png

在輸入框右側(cè)有一些簡單的js腳本生成按鈕艘虎,可以通過按鈕生成

9.6 Tests內(nèi)置腳本

既然有在請求發(fā)起之前執(zhí)行的腳本唉侄,那么是否有在請求完成之后執(zhí)行的腳本呢? 有

Tests里面輸入的腳本就是在網(wǎng)絡(luò)請求之后執(zhí)行的野建,Postman的強(qiáng)大之處在于其允許在對某一個request訪問的之前和之后分別運(yùn)行自定義的一段Javascript腳本属划,這樣直接就完成了一個chain request效果,可以將數(shù)條request連結(jié)成一個流程完成一體化測試候生。

如下在Pre-request Script和Tests中分別輸入了js代碼同眯,執(zhí)行如下如所示:

image.png

9.7 命令行運(yùn)行接口結(jié)合

9.7.1 命令行運(yùn)行

執(zhí)行命令行前提條件是需要newman,newman是需要nodejs來安裝的唯鸭,所以得先下載安裝

node.node下載地址:https://nodejs.org/en/download/

cmd模式下輸入node -v须蜗,回車,顯示node版本號目溉,即為安裝成功 npm(node package manager):nodejs的包管理器明肮,用于node插件管理(包括安裝、卸載停做、管理依賴 等)cnpm:淘寶團(tuán)隊(duì)的cnpm是npm在國內(nèi)的鏡像晤愧,可以用此代替官方版本(只讀),同步頻率目前為 10分鐘 一次 以保證盡量與官方服務(wù)同步蛉腌。 安裝完后查看版本cnpm -v 安裝newman:cnpm install newman --global 檢查是否安裝成功:newman -v 安裝newman-reporter-html 執(zhí)行cnpm install -g newman-reporter-html 在測試文件夾 pmtest 里面可以看到生成的一個 newman 文件夾官份,打開就可以看到生成的測試報告只厘。

9.8 環(huán)境變量的使用

9.8.1 Postman 環(huán)境變量的應(yīng)用

點(diǎn)擊眼睛圖標(biāo)可以查看所有的環(huán)境變量和全局變量。點(diǎn)擊眼睛圖標(biāo)右邊的設(shè)置圖標(biāo)可以設(shè)置環(huán)境變量和全局變 量舅巷。環(huán)境變量可以分組設(shè)置羔味,并且在使用的時候選擇其中一組環(huán)境變量。 使用環(huán)境變量 {{baseUrl}} 兩邊各量 個花括號括起來 這個環(huán)境變量可以在url 中使用钠右,也可以在header 中能使用赋元,還能在請求體中使用

選中No Environment(選中已有環(huán)境就變成編輯了)--> 點(diǎn)擊眼睛-->點(diǎn)擊Add

image.png

image.png

案例:新建兩個環(huán)境,都創(chuàng)建相同的環(huán)境變量baseUrl值使用不同的網(wǎng)址飒房,新建請求搁凸,使用

{{baseUrl}},切換環(huán)境后狠毯,同一個請求訪問到的頁面不一樣

9.9 全局變量的使用

9.9.1 Postman全局變量的應(yīng)用

postman 的環(huán)境變量可以分組护糖,但是全局變量不能分組,只能有一組全局變量嚼松,在設(shè)置和使用都類似于環(huán)境 變量嫡良。在下圖位置設(shè)置全局變量。

點(diǎn)擊右上角眼睛 --> 點(diǎn)擊Globals右邊的Edit献酗,添加全局變量寝受,點(diǎn)擊save保存,和環(huán)境變量一樣罕偎,通過{{timestamp}}引用

image.png

image.png

案例:添加時間戳

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末很澄,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子锨亏,更是在濱河造成了極大的恐慌痴怨,老刑警劉巖忙干,帶你破解...
    沈念sama閱讀 218,036評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件器予,死亡現(xiàn)場離奇詭異,居然都是意外死亡捐迫,警方通過查閱死者的電腦和手機(jī)乾翔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來施戴,“玉大人反浓,你說我怎么就攤上這事≡藁” “怎么了雷则?”我有些...
    開封第一講書人閱讀 164,411評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長肪笋。 經(jīng)常有香客問我月劈,道長度迂,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,622評論 1 293
  • 正文 為了忘掉前任猜揪,我火速辦了婚禮惭墓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘而姐。我一直安慰自己腊凶,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評論 6 392
  • 文/花漫 我一把揭開白布拴念。 她就那樣靜靜地躺著钧萍,像睡著了一般。 火紅的嫁衣襯著肌膚如雪政鼠。 梳的紋絲不亂的頭發(fā)上划煮,一...
    開封第一講書人閱讀 51,521評論 1 304
  • 那天,我揣著相機(jī)與錄音缔俄,去河邊找鬼弛秋。 笑死,一個胖子當(dāng)著我的面吹牛俐载,可吹牛的內(nèi)容都是我干的蟹略。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼遏佣,長吁一口氣:“原來是場噩夢啊……” “哼挖炬!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起状婶,我...
    開封第一講書人閱讀 39,200評論 0 276
  • 序言:老撾萬榮一對情侶失蹤意敛,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后膛虫,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體草姻,經(jīng)...
    沈念sama閱讀 45,644評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評論 3 336
  • 正文 我和宋清朗相戀三年稍刀,在試婚紗的時候發(fā)現(xiàn)自己被綠了撩独。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,953評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡账月,死狀恐怖综膀,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情局齿,我是刑警寧澤剧劝,帶...
    沈念sama閱讀 35,673評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站抓歼,受9級特大地震影響讥此,放射性物質(zhì)發(fā)生泄漏示绊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評論 3 329
  • 文/蒙蒙 一暂论、第九天 我趴在偏房一處隱蔽的房頂上張望面褐。 院中可真熱鬧,春花似錦取胎、人聲如沸展哭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽匪傍。三九已至,卻和暖如春觉痛,著一層夾襖步出監(jiān)牢的瞬間役衡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評論 1 269
  • 我被黑心中介騙來泰國打工薪棒, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留手蝎,地道東北人。 一個月前我還...
    沈念sama閱讀 48,119評論 3 370
  • 正文 我出身青樓俐芯,卻偏偏與公主長得像棵介,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子吧史,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評論 2 355