使用 postman 進行接口測試

使用 postman 進行接口測試

postman 測試接口非常方便,接下來就開始測試 postman 的一些簡單用法。

一、postman 的簡單使用

打開安裝好的 postman 客戶端。

1. 使用 postman 獲取 html 網頁

postman 支持很多請求方式,默認使用的是 GET 請求方式,直接獲取一個網頁的數據時,就是使用 GET 請求方式。

在 postman 的 url 輸入框輸入 www.baidu.com ,點擊右邊的 Send 按鈕,就會獲取到百度首頁的 HTML 文件。

這個結果和使用瀏覽器訪問百度首頁獲取到的結果相同,只是瀏覽器會將 HTML 文件解析成我們看到的頁面,postman 保留了前端的代碼,不做解析。

2. 使用 postman 獲取 json 數據

https://httpbin.org 網站提供了一些供開發人員測試的接口,可以用來進行測試。

在 postman 的 url 輸入框輸入 https://httpbin.org/get ,點擊 Send 按鈕,這個網站會返回一個 json 數據,json 數據中的 User-Agent 是 PostmanRuntime/7.20.1,將我們發送請求的軟件名字返回了,如果使用瀏覽器打開這個網頁,返回的數據中 User-Agent 就是瀏覽器的信息。

3. 使用 postman 獲取圖片數據

如果訪問的接口返回的是靜態文件,比如說圖片,也可以使用 postman 來完成獲取。

當在瀏覽器訪問 GitHub 時,可以看到 GitHub 的圖標,一般的網頁圖標都是展示在瀏覽器的頂部。

可以訪問 https://github.com/favicon.ico 獲取到 GitHub 的圖標,在大部分的 Web 項目中,都會使用 /favicon.ico 來作爲網站的圖標接口。比如百度的圖標就訪問 www.baidu.com/favicon.ico ,QQ的圖標就訪問 www.qq.com/favicon.ico ,淘寶的圖標就訪問 www.taobao.com/favicon.ico,以此類推,自己開發的網站一般也會使用 /favicon.ico 接口。

4. 使用 postman 發送 POST 請求

在請求方式中,GET 和 POST 是最常用的兩種方式。GET 是最簡單的,POST 要比 GET 複雜一些,因爲要按照接口設計的要求發送數據給後端,後端才能返回正確的數據。

還是使用 https://httpbin.org 網站提供的測試接口,上面使用的是 https://httpbin.org/get 接口,同理可以猜到也有 https://httpbin.org/post 接口。

確實沒錯,在 url 輸入框輸入 https://httpbin.org/post ,將左邊的請求方式改成 POST 方法,POST 需要向後端發送數據,這個接口需要的數據是 json 格式的數據。數據放在請求體 Body 中,點擊 Body 按鈕,選擇 raw ,再點擊右邊的下拉框選擇 JSON ,然後輸入需要發送的 json 數據。

一切準備就緒,點擊 Send 按鈕,就會收到該接口返回的數據,也是 json 格式的,這個接口中返回了我們發送過去的數據。

此外, https://httpbin.org 網站還提供了 PUT 和 DELETE 等測試接口,都可以使用 postman 來測試。

測試 PUT 時就將請求方式改成 PUT,訪問 https://httpbin.org/put ,發送對應的數據。

測試 DELETE 時就將請求方式改成 DELETE,訪問 https://httpbin.org/delete 。

二、使用 postman 測試 Flask 項目接口

在前面的文章裏,我用 Python Flask 框架實現了簡單增刪改查的接口,接下來就用 postman 對這些接口進行測試。

接口實現的文章: https://blog.csdn.net/weixin_43790276/article/details/101390889

1. 查詢所有數據

先在本地運行 Flask 後臺程序和 Mysql ,Flask 默認服務地址是 http://127.0.0.1:5000/ 。

在 postman 的 url 輸入框裏輸入 http://127.0.0.1:5000/ ,然後點擊 Send 按鈕,在 Flask 的後端視圖函數中,返回的是一個模板文件,所以在 postman 中獲取到的就是模板文件的源碼,postman 不像瀏覽器會對模板文件進行渲染。

postman 返回的是 HTML 源碼,在我寫的這個 Flask 程序中,所有接口返回的都是同一個模板文件,HTML 源碼是一樣的,對比不出效果。

雖然 postman 默認不會渲染頁面,但並不代表沒有這個功能。在響應數據欄的上方,有一個 Preview 按鈕,就是大部分軟件都有的“預覽”功能,點擊 Preview 按鈕,就會看到跟瀏覽器頁面一樣的效果。完成這個 Flask 程序後,進行了一些演示,所以現在只剩一條數據,展示效果如下圖。

2. 添加數據

在實現的接口中,查詢所有,指定查詢和添加數據的接口是同一個,都是根路由 / ,將請求方式改成 POST ,url 繼續填 http://127.0.0.1:5000/ 。

後端接口是從前端的 form 表單中獲取數據的,所以要使用 form 表單將添加的數據發送給後端。不管是 from 表單,還是上面使用的 json 數據,都是攜帶在請求體中的,所以 form 表單也是通過請求體發送給後端。

點擊 postman 界面的 Body 按鈕,選擇 form-data ,然後按鍵值對的形式填寫 form 表單的數據,KEY 對應 from 表單中前端標籤的 name 值,VALUE 對應 from 表單中提交的內容,也就是我們在瀏覽器 input 標籤中輸入的內容。

確認填寫無誤後,點擊 Send 按鈕即可發送請求,獲取響應,返回的還是 HTML 文件。

點擊 Preview 預覽,現在已經多了添加的數據,添加成功。

3. 查詢指定數據

查詢指定數據的接口不變,請求方式也是 POST ,url 繼續填 http://127.0.0.1:5000/ 。

然後將需要查詢的數據用 from 表單的方式發送給後端,返回響應。

點擊 Preview 預覽,只顯示查詢的數據,查詢數據的接口也測試成功。

4. 修改數據

修改的接口有兩個,/update_person/<id> 和 /update_phone/<id> ,只測試 /update_phone/<id> ,另一個就不重複了。

修改數據的請求方式使用的是 POST ,在 RESTful 接口設計風格中,修改接口一般使用 PUT 請求方式,但並不是一定要遵守。

將 url 改成 http://127.0.0.1:5000/update_phone/11 ,在 url 中包含了修改的 id ,這個 id 值要到本地數據庫中查,因爲之前對數據多次刪除和添加,id 是自增的,所以現在需要到數據庫中確認 id 值,將這個值從 url 中攜帶給後端。

在 from 表單中填寫修改後的值,發送請求,返回響應,預覽,可以看到數據修改成功。

5. 刪除數據

刪除的接口也有兩個,/delete_person/<id> 和 /delete_phone/<id> ,這次測試 /delete_person/<id> 。

刪除接口的請求方式使用的是 GET ,在 RESTful 接口設計風格中,刪除接口一般使用 DELETE 請求方式,不一定要遵守。

如將上面添加的數據刪除掉,先到數據庫中查到這條數據的 id ,然後將 id 值從 url 中攜帶給後端。

點擊 Send 按鈕發送請求,返回響應,預覽,可以看到數據刪除成功,只剩下了最初的一條數據。

通過對一些網站接口的測試和對自己開發的簡單接口進行測試,可以看出 postman 進行接口測試確實是比較簡單的。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章