1. 程式人生 > 實用技巧 >postman使用篇最全整理

postman使用篇最全整理

postman使用篇最全整理

一、下面簡單介紹一下可能會使用到的幾個按鈕操作


圖片描述
重點看標記出來的幾個按鈕,從上到下、從左至右的順序依次是匯入、新建資料夾、儲存請求、下載。
匯入:用於匯入你或團隊儲存的API請求檔案,json格式。
新建資料夾:用於API請求分門別類,便於管理。
儲存請求:儲存你的API請求,返回值也能儲存下來。
下載:下載你測試通過的API請求,團隊共享,匯入。json格式,可手動編輯的。

二、介面

介面分成左右兩個部分,左邊是我們後頭要講的collection,右邊是現在要講的request builder。在request builder中,我們可以通過Postman快速的隨意組裝出我們希望的request。一般來說,所有的HTTP Request都分成4個部分,URL, method, headers和body。而Postman針對這幾部分都有針對性的工具。

URL

要組裝一條Request, URL永遠是你首先要填的內容,在Postman裡面你曾輸入過的URL是可以通過下拉自動補全的哦。如果你點選Params按鈕,Postman會彈出一個鍵值編輯器,你可以在哪裡輸入URL的Parameter,Postman會幫你自動加入到URL當中,反之,如果你的URL當中已經有了引數,那Postman會在你開啟鍵值編輯器的時候把引數自動載入

這裡寫圖片描述

Headers

點選’Headers’按鈕,Postman同樣會彈出一個鍵值編輯器。在這裡,你可以隨意新增你想要的Header attribute,同樣Postman為我們通過了很貼心的auto-complete功能,敲入一個字母,你可以從下拉選單裡選擇你想要的標準atrribute

這裡寫圖片描述

受限的headers和cookies
不幸的是一些headers收到Chrome和XMLHttpRequest規範的限制,以下headers被遮蔽:

Accept-Charset
Accept-Encoding
Access-Control-Request-Headers
Access-Control-Request-Method
Connection
Content-Length
Cookie
Cookie 2
Content-Transfer-Encoding
Date
Expect
Host
Keep-Alive
Origin
Referer
TE
Trailer
Transfer-Encoding
Upgrade
User-Agent

Via

從Postman v0.9.6版本開始,我們可以使用攔截器來發送這些受限的headers:

攔截器.png

安裝完成後點選切換就可以使用這些headers傳送請求了。

headers預設
你可以儲存常用的headers在headr prest裡面:

當 request body需要傳原始的json資料時headers的Content-Type需要選擇application/json, 或者在body選擇 raw,切換成JSON(application/json)

Method

要選擇Request的Method是很簡單的,Postman支援所有的Method,而一旦你選擇了Method,Postman的request body編輯器會根據的你選擇,自動的發生改變

這裡寫圖片描述

請求方法:

get:獲取資源

post:建立資源

put/patch:更新資源

delete:刪除資源

Authorization:鑑權

目前用的最多的鑑權:token,basic,application,處理方式是先獲取token,再把token放在headers傳給後臺表示有登入的許可權了

Request Body

如果我們要建立的request是類似於POST,那我們就需要編輯Request Body,Postman根據body type的不同,提供了4種編輯方式:當我們傳送請求需要填寫body部分時,Postman幾乎可以讓我們傳送任何型別的HTTP請求

  • form-data
  • x-www-form-urlencoded
  • raw
  • binary

(我們這裡是可以傳檔案的哦)

form-data

form-data是web表單預設的傳輸格式,編輯器允許你通過設定key-value形式的資料來模擬填充表單。你可以在最後的選項中選擇新增檔案。

就是http請求中的multipart/form-data,它會將表單的資料處理為一條訊息,以標籤為單元,用分隔符分開。既可以上傳鍵值對,也可以上傳檔案。當上傳的欄位是檔案時,會有Content-Type來說明檔案型別;content-disposition,用來說明欄位的一些資訊;

由於有boundary隔離,所以multipart/form-data既可以上傳檔案,也可以上傳鍵值對,它採用了鍵值對的方式,所以可以上傳多個檔案。


  • x-www-form-urlencoded

這個編碼格式同樣可以通過設定key-value的方式作為URL的引數。

就是application/x-www-from-urlencoded,會將表單內的資料轉換為鍵值對,比如,name=Java&age = 23

raw

一個raw請求可以包含任何內容。在這裡你可以設定我們常用的JSON 和 XML資料格式。

  • binary(二進位制)

在這裡你可以傳送視訊、音訊、文字等檔案。

相當於Content-Type:application/octet-stream,從字面意思得知,只可以上傳二進位制資料,通常用來上傳檔案,由於沒有鍵值,所以,一次只能上傳一個檔案。


常見狀態碼:

200:請求傳送成功響應

201:請求的資源成功建立或更新

300:重定向

301:一般重定向的目的地在返回的header或body裡面指示(瀏覽器模式不支援)

400:必填引數客戶端沒有提供

401:需要鑑權的介面(如登入)

403:沒有許可權

404:找不到資源,客戶端錯誤

500:伺服器錯誤,介面有bug

502:Ngnix配置不對,有bug

(4開頭 有時是客戶端請求有誤,引數錯誤或需要鑑權;5開頭一般是有bug)

引數化:

設定好引數對應關係key,value對應資料檔案中的username和password(資料檔案可以是json格式,txt格式,Excel格式)

在執行介面時需要選擇資料檔案

斷言:

變數(環境變數,全域性變數,本地變數,Data)

Environment:環境變數

比如可以將url、引數資料設定成環境變數,開發環境;測試環境;生產環境

例子:

介面地址:https://www.v2ex.com/api/nodes/show.json?name=“”

生產環境中name的變數是python,測試環境中name的變數是php

則可以先設定兩個環境變數test和production,把name作為變數新增進環境變數中

分別新增兩個環境中的name對應為python和php,起個變數名為node_name替換

介面地址中的name則換成環境變數中的node_name代替,兩個中括號括起,選擇環境傳送

Global:全域性變數

比如可以將錯誤提示資訊設定成全域性變數

上面的例子也可以設定全域性變數,選擇環境管理-設定全域性變數

在傳送時不選擇環境,則name將會變成全域性變數的qna

如果環境變數和全域性變數中都給同一個變數賦了值,選擇環境變數時該變數的值則會覆蓋掉全域性變數中的值,一般當所有環境中變數的值都是同樣時,只設置全域性變數就可以。

Local:本地變數

只在當前執行中有效,一般可以在sandbox中定義,如 Tests中編輯傳送js程式碼

Data:(資料驅動)

測試資料中匯入的變數,也就是所謂的引數化,在執行Collection,test run時匯入

Collection

Collection 是 requests的集合,在做完一個測試的時候, 你可以把這次的 request 存到特定的 Collection 裡面,如此一來,下次要做同樣的測試時,就不需要重新輸入。而且一個collection可以包含多條request,如果我們把一個request當成一個test case,那collection就可以看成是一個test suite。通過collection的歸類,我們可以良好的分類測試軟體所提供的API.而且 Collection 還可以 Import 或是 Share 出來,讓團隊裡面的所有人共享你建立起來的 Collection。

推薦postman相關乾貨視訊:騰訊課堂 https://ke.qq.com/course/246722