Postman是一款流行的API測試工具和開發環境,旨在簡化API開發過程、測試和文件編制。它提供了一套功能強大的工具,幫助開發人員更輕鬆地構建、測試和除錯Web服務。
Postman 工具的優勢****
- Postman 可以快速構建請求、還可以儲存以後再使用。
- Postman 還提供響應結果的比較功能,可以用來寫測試用例。使用 Postman 檢視測試結果也非常的方便,可以自定義一些預期的結果,根據 Postman 給返回的 pass 或者 fail 就可以判斷出測試是不是透過。
- Postman 還可以把測試用例放在測試集中批次執行,方便各種業務場景的測試和迴歸。
- 一般來說測試介面肯定是要會有很多套環境的,比如說生產環境、測試環境,正式環境等等。在 Postman 中可以透過設定不同的環境變數,很方便的使用同一套測試用例,只是切換到不同的測試環境就可以。
****應用場景
API 測試: Postman 可以用來快速、簡便地測試 API 介面,透過傳送HTTP請求並檢視響應資料來驗證介面的功能是否正常。
自動化測試: Postman 提供了強大的測試指令碼功能,可以編寫測試指令碼來自動化執行介面測試,減少人工測試工作量。
效能測試: Postman 可以用來執行效能測試,透過模擬大量使用者同時訪問介面來評估介面的效能表現。
監控和斷言: Postman 可以設定監控指令碼,定期檢查介面的可用性和效能,並進行斷言來確保介面符合預期行為。
整合測試: Postman 可以用於整合測試,測試多個介面的整合和功能是否正常協作。
協作與分享: Postman 允許團隊成員協作共享介面文件、測試用例、環境變數等資訊,提高團隊的協作效率。
Mock 伺服器: Postman 可以生成 Mock 伺服器,用於模擬外部服務或元件,幫助開發人員獨立進行開發和測試。
環境管理: Postman 可以管理多個環境,如開發、測試、生產等,便於在不同環境之間切換測試。
資料驅動測試: Postman 支援透過 CSV 檔案等資料驅動方式進行測試,提高用例覆蓋範圍和複用性。
Postman 安裝
可以進入 Postman 官方網站自行選擇系統下載安裝:
Postman 官方網站:https://www.Postman.com/
頁面介紹
頂部欄****
- Home: 進入登入註冊頁面
- Workspaces: 選擇工作區域(會員功能)
- Reports: 測試報告(付費功能)
- Explore: 探索 Postman 更多功能
- 搜尋框: 快速檢索過濾
- 右側: 系統設定區域
左側欄
- Collections: 測試集
- APIs: 建立 API(需要註冊)
- Environments: 管理環境
- Mock Servers: 提供 mock 服務
- Monitors: 監視器
- History: 歷史記錄
右側欄
- 頂部環境資訊
- 請求配置區域
- 響應檢視區域
頂部環境資訊
- 檢視當前使用的環境
- 檢視當前環境中的變數
請求配置區域
在此可以新建一個請求標籤
提供各種請求方法(如GET、POST等),請求引數,請求header,請求執行前的設定專案,測試指令碼等的配置功能
- METHOD:請求方法
- URL & Params:URL 可以輸入 request 的地址,Params 是對應的URL的引數。在 Params 中輸入引數,會自動同步到 URL。同理,URL 裡面輸入帶有引數的地址,也會自動同步引數到 Params。
- Send:傳送當前請求。在傳送請求之後,會自動下載該請求的response。
- Send and Download 在傳送請求後,把響應資料儲存為本地的檔案。
- Save 可以直接儲存 request。也可以選擇Save as。
-
Save as: 可以儲存 請求的名字以及簡單的描述。還可以決定要不要把請求儲存到Collection裡面去。
-
Authorization 如果訪問的服務需要授權,這裡可以設定驗證方式+填寫驗證所需的資訊,比如使用者名稱密碼。
-
Headers 設定請求頭資訊。
-
Body: 設定請求的 body。有四種方式進行設定:form-data、 urlencoded、raw 以及 binary。POST 中要攜帶的請求資料可以透過 body 上傳。
-
form-data
:既可以上傳鍵值對,也可以上傳檔案
-
x-www-form-urlencoded
:會將表單內的資料轉換為鍵值對 -
raw
:可以上傳任意格式的文字,比如說Text
、JSON
、XML
、HTML
等
-
- binary:只可以上傳二進位制資料,通常用來上傳檔案。
-
Pre-request Script 請求前需要執行的指令碼可以放置在這裡。主要進行一些環境以及全域性變數的設定。
-
Tests
這裡寫測試用例的斷言,會對測試結果進行一些判斷。
Postman中 的這些前置和斷言指令碼都是 JavaScript 指令碼,如果會 JS 語法的話,是可以自己寫這些指令碼的,但是 Postman 當中也為提前封裝好了一些常用的方法,不需要去掌握 JS 語法,就可以輕鬆使用這些預置好的指令碼。
- Generate Code 可以將request轉化為各種語言的程式碼。比如Python、JAVA、shell、HTTP等。
Postman 基本使用
傳送 GET 請求
下面使用 Postman 傳送一次 GET 請求。使用學社提供的官方演練地址進行演示
https://httpbin.ceshiren.com/
- 進入 Postman 軟體介面
- 選擇 GET 請求方式
- 在 URL 處填寫 https://httpbin.ceshiren.com/get
- 點選 Header,key 值填寫 accept,value 填寫 application/JSON
- 點選 send 按鈕,檢視返回內容
傳送 POST 請求
- 請求方式:POST
- 請求 URL:https://httpbin.ceshiren.com/post
- 請求引數
-
- FORM 格式:Body --> form-data
- JSON 格式:Body --> raw --> JSON
- 檔案格式:Body --> form-data --> File
新增 FORM 格式請求引數
- 進入 Postman 軟體介面
- 選擇 POST 請求方式
- 在 URL 處填寫 https://httpbin.ceshiren.com/post
- 選擇 Body--form data,key 值填寫 form_key1,value 填寫 form_value1
- 點選 send 按鈕,檢視返回內容
新增 JSON 格式請求引數
-
選擇 Body--raw
-
新增 JSON 內容
新增 JSON 內容{"json_key1":"json_value1","json_key2":"json_value2"}
新增檔案格式請求引數
在練習時可以在左面建立一個檔案,在檔案內容隨意輸入內容
- 選擇 Body--form data
- key 中輸入 file
- 在出現的選擇選單中選擇 建立的檔案
- 匯入要上傳的檔案
- 點選 send,檢視結果"form"-取得檔案中的內容
介面響應
- 狀態行:介面響應的第一行是狀態行,一般包含了 http 協議的 版本、響應狀態碼、狀態解釋語句
- 響應頭:包含響應頭資訊的 key 和 value
- 響應報文:服務端返回給客戶端的文字訊息、業務資料等等
BODY
有三種檢視方式:Pretty、 Raw、 Preview。
- Pretty 會根據選擇的型別對 Body 進行高亮顯示,同時可以選擇要不要自動換行,方便閱讀。比如之前請求測試人社群首頁的時候,返回的響應是 HTML,那 pretty 中顯示的 HTML 內容就是語法高亮和美觀的格式。後面響應是 JSON 格式的時候也是同樣。一般來說直接預設檢視 pretty 中的響應結果就可以。
- Raw 不會進行任何高亮顯示。
- Preview 顯示的是 Body 部分的預覽效果。
- Visualize 最後的這個是新功能,可以結合指令碼把響應進行圖形化的顯示。
COOKIES
伺服器返回的 cookie 資訊都提取出來展示在了這個專門的 tab 當中,可以從這裡進行檢視。
HEADERS
以 key-value 對的方式展示響應的 header 頭資訊。滑鼠停留在 key 上,會顯示該 key 的說明。
TESTS
如果在傳送請求的時候,在 Tests 中寫了斷言的指令碼,那麼在請求成功之後,就會在響應的 Tests 中展示對應的測試結果。
STATUS
展示響應狀態碼以及對應的狀態說明。這個響應狀態碼和狀態說明資訊其實就是介面響應第一行中的內容。
在 Status 的後面就可以直接檢視到本次請求的狀態碼,現在請求是成功的,所以顯示 200 ok。
TIME
可以檢視服務端響應所花費的時間。
SIZE
資料是響應資料的大小。
Postman 將響應大小分解為 body 和 headers。響應大小是近似值。
SAVE RESPONSE
最後面還提供了下載響應 body 的功能,可以直接把響應資料另存為一個檔案,方便後續處理。
HTTP 頭資訊
- 新增請求頭
- 修改請求頭
新增請求頭資訊
下面給測試環境中的 get 請求手動新增一個頭資訊:
新增 My-Header 這個引數
- My-Header: Harry
- 點選 send,檢視響應中 header 部分的內容。
修改請求頭資訊
除了新增之外,也可以修改頭資訊的值。比如想把 User-Agent 的值修改為 hogwarts
可以把預設的頭資訊勾選掉,然後重新定義自己的 key
- User-Agent: hogwarts
- 點選 send,檢視響應中的內容
總結
- Postman 基本概念
- Postman 工具準備
- Postman 基礎使用