日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用Postman完成接口测试

發布時間:2025/6/15 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Postman完成接口测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


1. 安裝

兩種安裝方式,我熱衷于以chrome插件形式安裝

Chrome插件(需要***,你懂的)

Mac App

2. 發送請求

Postman最基礎的功能就是發送http請求,支持GET/PUT/POST/DELETE,還有很多我不認識的http方法。

通過填寫URL、header、body等就可以發送一個請求,這對于我們平時做一些簡單的測試是夠用的。

如果你的應用需要用到登錄驗證,可以通過填寫Authorization以滿足你的需求。

另外也可以使用Chrome瀏覽器已經登錄的cookie,同步瀏覽器的cookie需要安裝另一個插件Interceptor(攔截機)。它可以在你發送請求時幫你將已經存在于瀏覽器的數據隨header請求,另外它可以將瀏覽器的請求寫到postman的歷史中(需要開啟“Request Capture”

)。

3. 集合

每次配置完一個請求都可以保存到一個集合中,如此一來,下次測試可以直接從集合中找到你要執行的測試。

集合不單單只有分類和存儲功能,Postman支持一鍵運行整個集合內的測試。

我們可以把一個請求當做一個Test Case, 那么集合就是一個Test Suite。

每個集合都對應一個URL,可以通過Share按鈕獲得你的集合URL,這個URL可以用于分享給你的隊友,或者用于Newman執行。

Newman是Postman的一個命令行工具,可以讓API測試加入到你的持續集成任務上。

4. 環境變量

當做API測試時,你可能經常需要切換不同的設置。比如,開發環境的API設置、測試環境和產品環境的API設置,你可能需要在不同的測試環境下使用不同的配置。為此Postman提供了環境變量,這樣你就可以通過修改環境變量,而不需修改請求了。

你可以通過右上角的下拉菜單選擇環境,可以通過點擊右側的小眼睛來查看當前環境變量。

5. API測試

Postman測試沙箱是一個JavaScript執行環境,可以通過JS腳本來編寫pre-requist和測試腳本。pre-requist可以用來修改一些默認參數。

Postman沙箱集成了幾個工具庫,比如lodash、SugarJs、tv4,還有一些內置函數如xml2JSON..

tv4用于驗證JSON數據,通過編寫JSON Schema來驗證,JSON Schema的語法請參照這里

測試語法:


// description 為該測試的描述// value 只要Boolean(value)不等于false,這個測試就是PASStests[description] = value// exampletests["Status code is 200"] = responseCode.code === 200;


我們以github status的接口為例:

url:https://status.github.com/api/status.json

tests["Status code is 200"] = responseCode.code === 200;// validate json schemavar schema = {

properties: {

status: {type: 'string'},

last_updated: {type: 'string'}

}

};

tests["Valid data schema"] = tv4.validate(responseBody, schema);// check statusvar jsonData = JSON.parse(responseBody);

tests["Github status is good"] = jsonData.status === 'good';

運行結果:

示例

受https://httpbin.org/啟發,Postman也提供了一套入門的APIhttps://dump.getpostman.com/,接下來我們將利用這套API做完整的測試。

1. 創建一個環境變量

點擊Manage Environments,然后點擊Add

添加一個URL變量,我們會在后續使用

2. 請求一個新用戶

我們需要通過發送一個POST請求到`url`/blog/users/來創建一個用戶,并需要附加下面的參數到請求body中:

注:記得將環境變量切換到dump.getpostman.com,這樣我們才能獲取到`url`變量

{?"username":?"abhinav",?"password":?"abc"?}

這個接口現在好像不支持創建用戶了,我們假設已經創建成功了,因為這不影響我們后續操作

3. 獲取用戶的Token

Token用于授予終端請求和訪問權限的。我們可以通過POST用戶名和密碼請求 `url`/blog/users/tokens/ 來獲取用戶的Token,這個Token將用于其他請求中。

{?"username":?"abhinav",?"password":?"abc"?}

4. 格式化JSON

我們需要從上面的請求結果中獲取到用戶Token和用戶ID,并將這兩個值保存到環境變量中,以供后續使用。將下面這段代碼添加到測試編輯器中:

var data = JSON.parse(responseBody);if (data.token) {

tests["Body has token"] = true;

postman.setEnvironmentVariable("user_id", data.user_id);

postman.setEnvironmentVariable("token", data.token);

}else {

tests["Body has token"] = false;

}


5. 創建一篇文章

如果上面的測試是在主窗口或者集合運行器中執行,那么user_id和token會自動地被添加到環境變量中。

為了創建一篇文章,我們需要發送一個POST請求到 `url`/blog/posts ,并將user_id和token添加在URL參數中。POST的請求Body如下:

{?"post":?"This?is?a?new?post"?}

6. 檢查返回數據

如果上述的請求成功的話將返回一個帶有post_id的JSON。我們將在這里驗證是否創建文章成功,并且將文章ID保存到環境變量。將下面這段代碼添加到測試編輯器中:


var data = JSON.parse(responseBody);

if (data.post_id) {

tests["post_id found"] = true;

postman.setEnvironmentVariable("post_id", data.post_id);

}else {

tests["post_id found"] = false;

}


7. 獲取一篇文章并驗證JSON

我們將通過上面返回的文章ID來獲取我們創建的文章。這里我們將用到Postman內置的tv4JSON 驗證器來檢查服務器響應的JSON。

創建一個GET請求到 `url`/blog/posts/`post_id`,并將下面這段代碼添加到測試編輯器中:

var schema = { "type": "object", "properties": { "content": "string", "created_at": "integer", "id": "integer"

}, "required": ["content", "created_at", "id"]

};

var data = JSON.parse(responseBody);

var result = tv4.validateResult(data, schema);

tests["Valid schema"] = result.valid;


8. 一鍵運行與分享集合

我們將上述每一個測試保存到PostmanTest的集合中,這樣我們就可以在任何時候打開和運行你想要的測試,并且可以一鍵運行所有,或者將集合分享給你的小伙伴,也可以獲取嵌入式代碼(如下面的按鈕)。

總結

以上是生活随笔為你收集整理的使用Postman完成接口测试的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。