測試工具 - Postman接口測試入門使用手冊,Postman如何進行數據關聯、自動更新cookies、簡單編程

前言

Postman 是在測試領域裏非常流行的接口測試工具。
本文介紹該工具從安裝,到錄製用例,再到可以流暢的進行用例回放的整個過程。後面還介紹了一些比較實用的方法,比如數據關聯、自動更新 cookies
希望本文從淺入深的不斷引導可以幫助到小白可以快速的掌握工具。

一、工具安裝

① 獲取工具

獲取地址: Postman 官網下載
在這裏插入圖片描述

② 賬號登錄

剛進來需要創建個新的賬戶。
在這裏插入圖片描述
進入首頁。
在這裏插入圖片描述

③ 抓包工具獲取

獲取地址: Fiddler 官網
在這裏插入圖片描述
填一下信息就能下載了。
在這裏插入圖片描述

二、接口測試

① 創建一個目錄

創建一個收集夾,用來存放我們錄製的接口用例。
在這裏插入圖片描述
在這裏插入圖片描述
目錄下面可以添加文件夾來進行分類管理,右鍵來進行文件夾添加。
在這裏插入圖片描述
在這裏插入圖片描述

② 編寫腳本

錄製接口用例,可以直接點擊右上角的錄製請求 request,也可以直接點擊右上角。
在這裏插入圖片描述
輸入用例名,下面可以選擇要保存的文件位置,我保存在了我剛纔創建的文件夾裏。
在這裏插入圖片描述
請求方式有很多種,是那種形式取決於頭部顯示的請求方式,上面的加號可以添加新的請求。
在這裏插入圖片描述

③ 抓取請求

我們利用 fiddler 工具來抓取請求。抓取到的請求查看它的 Raw 格式,可以看到上面是表頭參數,下面是 json 表體參數。我們把抓取到的值填到我們建立的用例裏。
在這裏插入圖片描述

④ 填寫用例頭部

頭部參數的第一條填在上面,其它的參數填到下面。通過 Bulk Edit 可以快捷進行頭部內容的填寫。
在這裏插入圖片描述
點擊 Key-Value Edit 可以切回來。
在這裏插入圖片描述

⑤ 填寫用例主體內容

選擇 raw 形式,把表體內容粘進來,再選擇 JSON 格式。
在這裏插入圖片描述

⑥ 測試

點擊 send,看返回值是不是對的,圖中可以看出我返回了正常的 JSON 數據,證明測試成功了。不確定返回的對不對,可以在正常瀏覽器裏做同樣的操作,與開發者工具的 network 看返回值做對比。在這裏插入圖片描述
一般 json 返回數據會有個狀態,也可以通過這個狀態看有沒有成功。
在這裏插入圖片描述

⑦ 用例回放

點擊左上角的 runner 進入回放頁面。
在這裏插入圖片描述
我們選擇必要的腳本,進行回放即可。
在這裏插入圖片描述

⑧ 設置斷言、檢查點

我們測試時看 response 返回值,成功的話一般會有標誌,我們把這個標誌設置爲檢查點,來看我們的接口是不是成功的。
在這裏插入圖片描述
點擊上面導航欄的 test,然後在右側選擇 Response body: Contains string,然後會多出一些代碼,在我圈住的位置把要檢測的文本內容填進去。
注意: 如果檢測的文本里包含雙引號,前面需要加一個正斜槓 " \" 來轉義。
在這裏插入圖片描述
給大家展示兩種常用的設置檢查點的方式。

// 斷言類型1 - 檢查返回值
pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("\"success\":true");
});

// 斷言類型2 - 檢查狀態碼
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});

三、高級設置

① cookies獲取

cookies 過一段時間會失效,新增操作如果不取到登錄操作返回的 cookies,一段時間後就不能用了。
新建一個環境,用於保存環境變量,每次回放讓它自動把新的 cookies 存儲到環境變量裏。
在這裏插入圖片描述
後續我們設置完環境變量就能在這裏看到。
在這裏插入圖片描述
可以看到 set-cookis 裏面的值就是我們需要的 cookie 信息。
在這裏插入圖片描述
把上面的環境選擇爲我們創建的環境。
輸入我們提取 cookie 的代碼,然後發送下請求。

// 獲取返回值頭部set-cookie的內容
var jsondata = postman.getResponseHeader("set-cookie");

// 通過;號來分割數據,轉化爲數組形式
data = jsondata.split(";");

// 設置環境變量,data數組裏的第一個值即我們需要的cookie
postman.setEnvironmentVariable("Cookie",data[0]);

在這裏插入圖片描述
如果設置對的話,測試一下,可以看到我們需要的 cookie 值已經提取出來了。
在這裏插入圖片描述
然後我們來引用前面的 cookie 環境變量,發送請求就成功了。
在這裏插入圖片描述

② 數據關聯,提取上一個請求的數據

提交動作往往需要該單據保存時生成的 id,這時我們就需要進行上下文數據關聯才能提交成功。

// 把responseBody轉爲json字符串
var data = JSON.parse(responseBody);

// 把templetid提取出來,存到環境變量裏
pm.environment.set("templetid", data.data.templetid);

示例中:我想要提取我圈住的這個 json 值。
在這裏插入圖片描述
可以看到環境變量裏已經有這個值了。
在這裏插入圖片描述

③ 地址欄引用全局變量

設置個全局變量,然後讓地址欄引用。
可以直接在環境裏添加全局變量。
在這裏插入圖片描述
兩個大括號括起來,就可以引用全局變量了。
還能通過代碼來添加全局變量。

// 添加全局變量
pm.globals.set("url", "http://test.nc-cloud.com");

在這裏插入圖片描述
bodyraw 引用變量也採用雙括號的方式。
在這裏插入圖片描述

④ json數據格式化

點擊 beautify 可以用來格式 json 數據,方便我們觀察數據、處理數據。
在這裏插入圖片描述
喜歡的點個贊❤吧!

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