如何使用postman做接口測試?

🍅?點擊文末小卡片?,免費獲取軟件測試全套資料,資料在手,漲薪更快???

常用的接口測試工具主要有以下幾種:

Postman: 簡單方便的接口調試工具,便于分享和協作。具有接口調試,接口集管理,環境配置,參數化,斷言,批量執行,錄制接口,Mock Server, 接口文檔, 接口監控等功能;

JMeter: 開源接口測試及壓測工具,支持Linux及無界面運行;

LR: 商業版接口性能測試工具,簡單易用,功能強大;

SoupUI: 開源,WebService接口常用測試工具,也可以測試Rest接口及接口安全。

本章主要介紹如何使用postman做接口測試。

?一 、postman 界面功能介紹


1、工具欄?

New: 新建,可以新建Request請求,Collection請求集,環境等等

Import: 導入,可以導入別人導出的請求集

Runner: 運行一個請求集(批量執行)

Invite: 邀請(需要注冊,邀請進行協作)

同步圖標:(需要注冊,同步你的項目到云端)

抓包圖標:抓包/捕獲請求,用于開啟Postman代理, 手動設置代理(或手機代理)后可抓包/錄制請求

設置圖標:Postman設置功能

消息圖標:官方及協助消息

收藏圖標:我的收藏(需要注冊)

云端圖標:用戶云端數據(需要注冊)

2、接口管理區

History: 請求歷史記錄,可以查詢到之前的請求記錄

Collections: 接口集,相當于一個接口項目或測試計劃,接口集中可以建立無限極子文件夾,用于對接口進行分組管理

3、環境管理區

什么是環境

環境切換:用于切換環境

環境預覽:用于快速預覽環境中的所有變量

環境管理:用于添加修改環境及環境變量,以及全局變量

4、接口設計區

接口設計區可以通過上方tab邊上的+號,新建多個請求。接口設計區從上到下分為請求區和響應區

①請求區?

請求地址行:可以選擇請求方法(GET/POST/...),填寫請求地址,發送請求和保存請求到測試集?

請求數據區:分為授權,請求頭,請求數據,請求發送前執行的腳本(用于準備數據),請求結束后執行的腳本(用于斷言)?

②響應區:?

響應內容(body):可以查看Pretty(美化格式),Raw(原始格式),Preview(HTML預覽格式)

響應Cookie?

響應頭(headers)

測試結果(Test Results):對應請求中Tests中設置的斷言

5、Collection請求集(測試集):

請求集是Postman中接口管理的一個"整體"單位,運行、導出、分享等都是基于請求集的

①新建請求集:New按鈕-->Collection 或 直接點擊請求集列表上方的新建請求集按鈕

授權:請求集及其子文件夾下的接口統一使用該授權,不用每個接口再都單獨設置一遍?

請求前腳本:請求集的每個接口公用的請求前腳本?

請求后斷言:請求集每個接口公用的請求后腳本?

請求集變量:請求集中公用的一些變量

②新建子文件夾:子文件夾的屬性中同樣擁有描述,授權,請求前腳本,和請求后斷言(沒有變量,一個請求集的變量統一管理),實現了不同范圍(Scope)的Fixture功能。?

③測試集導出:測試集可以導出并發送給別人(不攜帶環境信息),別人通過導入來使用你的接口?

④測試集分享:測試集直接分享給別人(雙方都需要注冊)

⑤添加請求:通過測試集add request 添加請求,這個請求包含于這個測試集里。

測試集的功能操作:

6、環境變量和全局變量

環境管理中還可以點擊“Global”添加全局變量,環境變量只有當選擇了該環境時才生效,全局變量在任何環境中都生效,測試集中的變量只在當前測試集生效,當測試集變量,環境變量,

全局變量有重復的變量名時,優先級為:環境變量>全局變量>測試集變量。

添加環境變量:設置-add-環境變量信息填寫

添加全局變量:設置-Global-全局變量信息填寫

我們可以環境中設置多個變量,以供在請求中使用。

環境變量使用方法: 選擇環境,在請求URL或者請求Body里使用{undefined{變量名}}來使用環境變量,變量可以在請求Body的各種格式中使用,但不能直接在請求前腳本(Pre-request Script)和請求后腳本(Tests)中使用。

Params:當請求URL中參數很多時,不方便進行添加和查看,可以點擊URL輸入框下的Params按鈕,以表格的方式添加變量及值,從表格添加后,變量和值會自動添加到URL中。

7、請求設計

授權:如果接口需要授權,可以在該頁面設置授權方式(type)和授權信息

Header:請求頭,可以設置請求類型(Content-Type)和Cookie

Body:請求數據

form-data:混合表單,支持上傳文件 ;x-www-form-urlencoded:文本表單;raw:原始格式,支持JSON/XML格式(后面可選擇) ;binary:二進制格式,用于發送二進制數據流

Pre-request Script:請求前腳本,Javascript語法,用于在發送請求前生成一些動態數據或做一些處理

Tests:請求后腳本,Javascript語法,用于請求返回后做一些處理或斷言結果?

7.1 Postman發送各種格式請求數據的請求方法(注意:選擇不同的請求可是,會自動在Header中添加Content-Type信息 ):

form-data:混合表單,支持上傳文件 ;

x-www-form-urlencoded:文本表單;

raw:原始格式,支持JSON/XML格式(后面可選擇) ;

binary:二進制格式,用于發送二進制數據流

form-data混合表單格式傳參示例(上傳文件-選擇file類型,傳文本選擇text類型):

x-www-form-urlencoded(文本表單)傳參示例:

raw:原始格式,支持json和xml格式傳參示例:

7.2 tests斷言示例

??

二、postman接口測試實例

1、發送一個get請求的方法:

選擇get請求方式,輸入要請求的url,傳參方式以json為例,選擇raw再選擇JSON,然后將參數填入請求參數區,點擊send發送請求,在響應區即可看到返回結果。如下

2、發送一個post請求實例:

選擇post請求方式,輸入要請求的url,傳參方式以混合表單為例,選擇form-data,然后將參數名稱和對應的值填入參數區,點擊send發送請求,在響應區即可看到返回結果。如下

3、使用postman批量發送請求

Runner:批量執行測試集

支持設置迭代次數

支持加載csv或json、txt類格式測試數據

使用實例:

①新建一個Collection,比如課堂練習,新建請求(add requests)如登錄,選擇POST方法,填入URL,請求數據,URL的host使用配置的環境變量,請求數據使用變量做參數化,本地新建參數化文件備用

②設置斷言

③Runner配置

1、點擊Runner,進入測試集批量執行設置頁面

2、選擇測試集下,要批量執行的請求,然后選擇本地參數化的txt文件login.txt,數據文件類型選擇text/csv,迭代次數iteration參數化數據多少個就填多少

3、點擊preview,可以預覽本地參數化數據

④以上配置完后,點擊Run XXX按鈕,即可批量執行用例,得到測試結果,如圖

最后感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:

這些資料,對于做【軟件測試】的朋友來說應該是最全面最完整的備戰倉庫,這個倉庫也陪伴我走過了最艱難的路程,希望也能幫助到你!凡事要趁早,特別是技術行業,一定要提升技術功底。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/89005.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/89005.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/89005.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

新型網絡架構設計助力智慧醫療降本增效

隨著智慧醫療的快速發展,越來越多的醫院開始布局“互聯網+醫療”服務,通過數字化手段提升醫療服務效率。然而,如何構建一個既穩定可靠又具備靈活擴展能力的醫療網絡,成為醫院數字化轉型中的關鍵問題。本文以某智慧醫療項目為例,探討傳統網絡與SD-WAN結合的最佳實踐。 背景…

一文讀懂現代卷積神經網絡—使用塊的網絡(VGG)

目錄 什么是使用塊的網絡(VGG)? 一、VGG 的核心思想:用塊(Block)構建網絡 二、VGG 的網絡結構 三、VGG 的優勢 1. 結構簡潔統一 2. 強大的特征表達能力 3. 小卷積核的計算效率 4. 良好的遷移學習性…

Linux的相關學習

linux 1.文件權限怎么修改 chmod [權限模式] [文件或目錄]1、**數字模式(八進制)**: chmod 755 myfile.sh # 所有者:rwx (7),組:r-x (5),其他用戶:r-x (5) 7 rwx(讀寫…

Kotlin集合接口

Kotlin 集合概述 Kotlin 集合提供了對數據進行各種操作的便捷方式。它們實現了接口,因此可以操作不同類型的數據。例如,你可以編寫一個函數,同時打印 Set 和 List 的所有元素。我們來看看這是如何實現的。Iterable 接口 我們已經知道&#xf…

Git 常用操作與注意事項全攻略

1. 基本配置 git config --global user.name "你的名字" git config --global user.email "你的郵箱" git config --list # 查看當前配置建議全局配置用戶名和郵箱,否則提交記錄可能不規范2.倉庫操作 初始化本地倉庫 git init只在新建項目時使…

STM32-第五節-TIM定時器-1(定時器中斷)

一、定時器原理:1.介紹:對指定輸入時鐘進行計數,并在計數值達到設定值時觸發中斷。分類:基本定時器,通用定時器,高級定時器頻率:72MHZ2.框圖: (1)基本定時器&…

【圖像處理基石】什么是色盲仿真技術?

色盲仿真概述 色盲仿真是一種將正常色彩圖像轉換為色盲患者感知效果的技術。人類常見的色盲類型包括: 紅色盲(Protanopia):無法感知紅色綠色盲(Deuteranopia):無法感知綠色藍黃色盲(…

九、官方人格提示詞匯總(中-3)

“參謀代寫計劃”功能輸出欣賞,規則: 本部分統一使用 Gemini 2.5 Pro API。該 API 下的輸出質量基本達到我的要求,已具備實用價值。嚴格等級均為“權衡有度(L3)”,創造力等級均為“趨勢捕手(L3…

華為MateBook D 16 SE版 2024款 12代酷睿版i5集顯(MCLF-XX,MCLF-16)原廠OEM預裝Win11系統

適用型號:MCLF-XX,MCLF-16鏈接:https://pan.baidu.com/s/1OkvUqZMdCSF98YtQfWAYXw?pwdq2gh 提取碼:q2gh 華為開箱狀態出廠Windows11系統自帶所有驅動、出廠主題壁紙、系統屬性聯機支持標志、系統屬性專屬LOGO標志、Office辦公軟件、華為電腦…

Python自動化:每日銷售數據可視化

這是手動執行sql分組查出的Linda奶茶店每日的銷售數據,那么能否圖形化展示方便對比近一個月每日的銷售趨勢呢。如果是做在網站里,前端可以集成echart或highchart生成柱狀圖或線狀圖。如果需要每天定時推送這些數據到郵箱或其他消息通知渠道,第一步肯定是需要先生成圖片到服務…

scrapy項目開發流程

1.創建項目:scrapy startproject mySpider2.生成一個爬蟲:scrapy genspider itcast itcast.cn3.提取數據:根據網站結構在spider中實現數據采集相關內容4.保存數據使用pipeline進行數據后續處理和保存1.創建項目items.py-->自己預計需要爬取…

堆排序以及其插入刪除

堆排序首先介紹一下堆排序屬于選擇排序的一種類型。其次就是他有點依賴于順序存儲樹判斷其孩子以及父節點的概念,接下來復習一下。堆分為大根堆和小根堆① 若滿?:L(i)≥L(2i)且L(i)≥L(2i1) (1 ≤ i ≤n/2 )—— ?根堆&#xff…

Spring Boot項目結構解析:構建高效、清晰的代碼框架

在當今的軟件開發領域,Spring Boot因其簡潔性和強大的功能而備受青睞。它不僅簡化了Spring框架的配置,還提供了一套高效的項目開發模式。本文將深入探討Spring Boot項目結構中的關鍵組件,包括PO、Query、VO、Config等,旨在幫助開發…

多客戶端 - 服務器結構-實操

實現2個客戶端之間互相聊天 要求: 1、服務器使用 select 模型實現接受多個客戶端連接,以及轉發消息 2、客戶端要求:使用 poll 模型解決 技能夠 read 讀取服務器發來的消息,又能夠scanf讀取鍵盤輸入的信息 3、客戶端服務器不允許開…

iOS高級開發工程師面試——Objective-C 語言特性

iOS高級開發工程師面試——Objective-C 語言特性 一、多態二、繼承三、代理(Delegate)1. 代理為什么用 weak 修飾呢?block和代理的區別?四、通知(NSNotificationCenter)五、KVC (Key-value Coding)六、屬性七、`@property` [?pr?p?ti]的本質是什么?ivar 、 setter …

MMpretrain 中的 LinearClsHead 結構與優化

LinearClsHead 結構與優化 一、LinearClsHead 核心結構 在 MMPretrain 中,LinearClsHead 是一個簡潔高效的分類頭,其核心結構如下: class LinearClsHead(BaseModule):def __init__(self,num_classes, # 類別數量in_channels, # 輸入…

Spring 學習筆記

1.Spring AOP 怎么實現的AOP 即面向切面編程,是通過代理實現的,主要分為靜態代理和動態代理,靜態代理就是在程序運行前就已經指定并聲明了代理類和增強邏輯,運行時就已經被編譯為字節碼文件了,而動態代理則是在運行過程…

【CVPR2024】計算機視覺|InceptionNeXt:速度與精度齊飛的CNN架構

論文地址:http://arxiv.org/pdf/2303.16900v3 代碼地址:https://github.com/sail-sg/inceptionnext 關注UP CV縫合怪,分享最計算機視覺新即插即用模塊,并提供配套的論文資料與代碼。 https://space.bilibili.com/473764881 摘要…

7.15 窗口函數 | 二分 | 位運算 | 字符串dp

lc3316. 字符串dpdp多開一行一列后,注意原字符串下標映射dp[n][m] ( n 是source長度, m 是pattern長度)兩重循環填表for i 1-nfor j 0-m三種狀態轉移1.不選 dp i jdp i-1 j2.不選if tag, dp[i][j]3.if(s ip j) 選,dp i…

Spring原理揭秘--初識AOP

我們知道軟件開發一直在追求高效,易維護,易擴展的特性方式。在面向過程編程到面向對象編程的歷程中,程序的開發有了非常大的進步。但是oop的方式缺依然存在著一些缺點。oop的方式可以將業務進行很好的分解和封裝使其模塊化,但是卻…