最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

PostMan 基礎(chǔ)知識(shí)

2023-05-20 00:41 作者:大丫頭胖  | 我要投稿

1. PostMan 介紹

????????Postman 是一款支持 Http 協(xié)議的接口調(diào)試與測試工具,其主要特點(diǎn)就是功能強(qiáng)大,使用簡單且易用性好 。無論是開發(fā)人員進(jìn)行接口調(diào)試,還是測試人員做接口測試,Postman 都是我們的首選工具之一。

PostMan 應(yīng)用程序圖標(biāo)

官方學(xué)習(xí)文檔地址:https://learning.postman.com/docs/introduction/overview/

Postman Echo APIs 學(xué)習(xí)地址:https://postman-echo.com


2. Postman Mock-Server 搭建

背景:因?yàn)榻涌跍y試依賴后端平臺(tái)(Server),但是受環(huán)境限制,并沒有這個(gè)后端平臺(tái)(Server)可以使用,所以現(xiàn)在需要使用 PostMan 的 Mock-Server 功能模擬(Mock)一個(gè)后端平臺(tái)(Server)。


Mocking with examples(通過樣例創(chuàng)建模擬服務(wù))

模擬服務(wù)(Mock Server)搭建過程中用到了許多后續(xù)需要學(xué)習(xí)的概念,例如 Request、Collection、Example、Response、Variable、Environment,這些概念在后續(xù)的內(nèi)容中都會(huì)介紹,這里可以不用太在意,按照如下步驟完成搭建就可以。

Step 1: Send a request,創(chuàng)建一個(gè)請(qǐng)求,作為后續(xù)創(chuàng)建 Mock Server 接口請(qǐng)求基本參照。

Step 2: Save the request to a collection,將請(qǐng)求保存至一個(gè)用例集(Collections),因?yàn)楹罄m(xù)需要基于用例集創(chuàng)建 Mock Server。

Step 3: Save a response as an example將此次請(qǐng)求和響應(yīng)(Response)數(shù)據(jù)保存成一個(gè)樣例,一定要注意,樣例(Example)里面保存了請(qǐng)求地址,參數(shù),響應(yīng)狀態(tài)碼,響應(yīng)體等 HTTP 協(xié)議數(shù)據(jù),因?yàn)榭梢詾橐粋€(gè)請(qǐng)求(Request?)創(chuàng)建多個(gè)(Example)樣例,每個(gè)樣例(Example)請(qǐng)求參數(shù)和響應(yīng)結(jié)果可以不一致,同樣,Mock Server 會(huì)根據(jù)請(qǐng)求數(shù)據(jù)的不同,返回對(duì)應(yīng)的數(shù)據(jù)。

Step 4: Create a mock server for the collection,為用例集(Collection)創(chuàng)建 Mock Server。創(chuàng)建用例集模擬(Mock)服務(wù)的時(shí)候,建議同時(shí)創(chuàng)建一個(gè)模擬(Mock)環(huán)境(Environment)。當(dāng)然,如果用例中并沒有用到變量(Variable),也就沒辦法創(chuàng)建對(duì)應(yīng)的模擬環(huán)境(Environment)。

Step 5: Send a request to the mock server,修改環(huán)境(Environment)或者直接復(fù)制 Mock-Server 的訪問地址(RUL)。

如果上述文字的內(nèi)容閱讀和理解有那么一點(diǎn)點(diǎn)困難,可以參考如下視頻。


3.?HTTP 協(xié)議基本概念


4. 發(fā)送第一個(gè)請(qǐng)求

????????PostMan 軟件已經(jīng)安裝完成,后端服務(wù)也已經(jīng)通過 Mock Server 配置好,接下來的事情就是了解 PostMan 軟件的基本功能和 HTTP 協(xié)議相關(guān)的基本概念。

打開 Postman 并嘗試以下操作:

發(fā)送第一個(gè)請(qǐng)求


在此示例中,Postman 充當(dāng)客戶端應(yīng)用程序并與 后端接口服務(wù)器通信。以下是點(diǎn)擊?Send?時(shí)發(fā)生的情況:

PostMan 請(qǐng)求響應(yīng)示意圖


5. 選擇請(qǐng)求方法

默認(rèn)情況下,Postman 將選擇GET新請(qǐng)求的方法。GET方法通常用于從 API 檢索數(shù)據(jù)。可以使用多種其他方法將數(shù)據(jù)發(fā)送到待測試接口,包括以下最常見的選項(xiàng)。

競賽題目中會(huì)明確給出待測試接口的請(qǐng)求方法,只需要按照要求選擇相應(yīng)的方法即可。


6. 構(gòu)造請(qǐng)求參數(shù)

① URL 參數(shù)

可以使用 URL 字段和 “參數(shù)” 選項(xiàng)卡隨請(qǐng)求發(fā)送路徑和查詢參數(shù)。

URL 請(qǐng)求參數(shù)構(gòu)建


② Body 參數(shù)

當(dāng)需要添加或更新結(jié)構(gòu)化數(shù)據(jù)時(shí),您都需要發(fā)送帶有請(qǐng)求的正文數(shù)據(jù)。例如,如果您要發(fā)送將新客戶添加到數(shù)據(jù)庫的請(qǐng)求,您可能會(huì)在 JSON 中包含客戶詳細(xì)信息。通常,會(huì)將正文數(shù)據(jù)與PUT、POSTPATCH請(qǐng)求一起使用。

Postman 中的?Body?選項(xiàng)卡允許指定需要隨請(qǐng)求一起發(fā)送的數(shù)據(jù)。可以發(fā)送各種不同類型的正文數(shù)據(jù)以適合帶測試接口。


如果要發(fā)送 Body 數(shù)據(jù),請(qǐng)確保選擇了正確的請(qǐng)求頭(Content-Type)以指示接口可正確處理接收到的數(shù)據(jù)的內(nèi)容類型。


③ Content-Type 請(qǐng)求頭格式

Content-Type 的格式有四種:分別是 application/x-www-form-urlencoded(這也是默認(rèn)格式)application/json、text/xml 以及 multipart/form-data 格式。


7. 用例集 - Collections

Collections集合:也就是將多個(gè)接口請(qǐng)求可以放在一起,并管理起來。


8. 斷言 - Assert

斷言主要是在 Test 操作框內(nèi)進(jìn)行設(shè)置,使用 JavaScript 語言編寫,斷言的結(jié)果在下方響應(yīng)內(nèi)容的 TestResult 內(nèi)。


PostMan Test?


① 響應(yīng)狀態(tài)碼斷言-Status

② 響應(yīng)正文斷言-Contains String

③ 響應(yīng)正文斷言-Json Value Check


④ 斷言響應(yīng)正文等于字符串 -Response body : is equal to a string or Object

說明:響應(yīng)正文必須等于某個(gè)字符串或者 JSON 對(duì)象。


⑤ 響應(yīng)頭斷言-Response headers:Content-Type header check


9. PostMan 變量

????????變量能夠在 Postman 中存儲(chǔ)和重用值。通過將值存儲(chǔ)為變量,可以在整個(gè)集合、環(huán)境、請(qǐng)求和測試腳本中引用它。


①?變量范圍

Postman 支持不同范圍的變量,允許用戶針對(duì)各種開發(fā)、測試和協(xié)作任務(wù)定制處理。Postman 中的作用域與請(qǐng)求運(yùn)行的不同上下文相關(guān),不同的變量作用域適用于不同的任務(wù)。按照優(yōu)先級(jí)從低到高的順序分別是:global(全局)、collection(用例集)、environment(環(huán)境)、data(數(shù)據(jù))和 local(局部)。

② 定義全局變量

定義全局變量

③ 定義環(huán)境變量

一個(gè)變量只能屬于一個(gè)環(huán)境,在某個(gè)環(huán)境下變量不可以重復(fù)定義;在環(huán)境與環(huán)境之間可以定義重復(fù)的變量;一個(gè)環(huán)境變量可以包含多個(gè)環(huán)境變量;

定義環(huán)境變量

④ 在腳本中定義變量

m.globals用于定義全局變量。

pm.environment 用于在當(dāng)前選擇的環(huán)境中定義一個(gè)環(huán)境變量。


⑤ 使用變量

可以使用雙花括號(hào)來引用整個(gè) Postman 中的變量。例如,要在請(qǐng)求授權(quán)設(shè)置中引用名為 “用戶名” 的變量,可以使用以下語法,并在名稱周圍加上雙花括號(hào):

當(dāng)運(yùn)行請(qǐng)求時(shí),Postman 將解析變量并將其替換為當(dāng)前值。例如,您可以有一個(gè)引用變量的請(qǐng)求 URL,如下所示:

可以在請(qǐng)求 URL、參數(shù)、標(biāo)頭、授權(quán)、正文和標(biāo)頭預(yù)設(shè)中使用變量。

使用變量


⑥ 在腳本中使用變量

可以使用表示范圍級(jí)別的對(duì)象和方法來檢索腳本中變量的當(dāng)前值.get



10. PostMan 中的腳本編碼

Postman 包含一個(gè)基于 Node.js 的強(qiáng)大運(yùn)行時(shí),允許您向請(qǐng)求和集合添加動(dòng)態(tài)行為。這允許您編寫 API 測試、構(gòu)建可以包含動(dòng)態(tài)參數(shù)的請(qǐng)求、在請(qǐng)求之間傳遞數(shù)據(jù)等等。

可以添加 JavaScript 代碼以在流程中的 2 個(gè)事件期間執(zhí)行:

  1. 在將請(qǐng)求發(fā)送到服務(wù)器之前,在?Pre-request Script?選項(xiàng)卡下編寫?前置腳本。

  2. 收到響應(yīng)后,在?Test?選項(xiàng)卡下的測試腳本(后置腳本)。

腳本的執(zhí)行順序,在 Postman 中,單個(gè)請(qǐng)求的腳本執(zhí)行順序如下所示:前置請(qǐng)求 -> 發(fā)送請(qǐng)求 -> 響應(yīng)返回 -> 測試腳本(后置腳本)。

PostMan 腳本請(qǐng)求執(zhí)行過程


11. 編寫請(qǐng)求前置腳本

請(qǐng)求前置腳本的使用場景:在請(qǐng)求url中需要使用隨機(jī)數(shù)或時(shí)間戳;需要對(duì)敏感數(shù)據(jù)進(jìn)行加密。

前置腳本編寫舉例:


12. PostMan 關(guān)聯(lián)

Postman關(guān)聯(lián):后一個(gè)接口的請(qǐng)求需要 依賴 前一個(gè)接口的響應(yīng)數(shù)據(jù),一般通過全局變量或者環(huán)境變量來進(jìn)行參數(shù)在接口之間的傳遞。

1. 接口 1 返回響應(yīng)數(shù)據(jù)之后(Tests 標(biāo)簽),將相應(yīng)數(shù)據(jù)寫入到全局變量 token 中。

2. 接口 2 請(qǐng)求發(fā)送之前,將全局變量 token 寫入到請(qǐng)求數(shù)據(jù)中(前置腳本 Pre-request Scrip 標(biāo)簽)或者直接在請(qǐng)求參數(shù)、請(qǐng)求體或者請(qǐng)求頭中使用。


13. 批量執(zhí)行用例集

雙擊用例集 ->? 點(diǎn)擊 Run 按鈕,打開 Runner 組件,設(shè)置相關(guān)屬性即可

① 執(zhí)行次數(shù) ②?每次迭代請(qǐng)求的間隔時(shí)間 ③ 請(qǐng)求數(shù)據(jù)

批量執(zhí)行測試用例集


14. 參數(shù)化和數(shù)據(jù)驅(qū)動(dòng)

① 數(shù)據(jù)驅(qū)動(dòng)

執(zhí)行測試用例的過程,本質(zhì)上是執(zhí)行的不同數(shù)據(jù),不同輸入輸出的過程。所以,在計(jì)算機(jī)中,我們可以使用預(yù)先設(shè)定好的數(shù)據(jù)文件,來執(zhí)行測試用例,實(shí)現(xiàn)覆蓋測試點(diǎn)。

② 參數(shù)化概念

請(qǐng)求參數(shù)中,不寫實(shí)際的值,而是寫成 {{變量名}} 的形式,就是參數(shù)化。

③ 具體流程


14. Cookie 管理

Cookie 是由訪問過的網(wǎng)站提供給您的一個(gè)基于文本的小型文件,可以幫助您識(shí)別到該站點(diǎn)。使用 cookie 可以導(dǎo)航到網(wǎng)站上的不同網(wǎng)頁或在以后返回到該網(wǎng)站維護(hù)狀態(tài)信息。


① Cookie 鑒權(quán)與狀態(tài)維護(hù)


② Cookie 管理

Cookies 管理





PostMan 基礎(chǔ)知識(shí)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
祁连县| 山东省| 洛阳市| 辉县市| 菏泽市| 永兴县| 茌平县| 洪泽县| 石首市| 阜南县| 涿州市| 枣阳市| 汨罗市| 北碚区| 富平县| 临泽县| 措美县| 定远县| 黎平县| 元谋县| 剑川县| 涟源市| 巴中市| 大关县| 淳化县| 大荔县| 财经| 富蕴县| 泗洪县| 酒泉市| 芜湖县| 康马县| 阳泉市| 论坛| 洛南县| 抚松县| 南开区| 都匀市| 什邡市| 清涧县| 高平市|