掌握Postman,開啟API測試新紀元!

霍格沃兹测试开发学社發表於2024-05-28

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:可以上傳任意格式的文字,比如說 TextJSONXMLHTML

    • 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 基礎使用

相關文章