postman 是一款強大網頁調試工具的客戶端,postman為用戶提供強大的 Web API & HTTP 請求調試功能。postman能夠發送任何類型的HTTP 請求 (GET, HEAD, POST, PUT..),附帶任何數量的參數+ headers,是一款非常實用的調試工具。需要的朋友快來下載吧。
不要點擊:https://item.taobao.com/item.htm?id=613711271112
postman軟件特色
支持各種的請求類型: get、post、put、patch、delete 等
支持在線存儲數據,通過賬號就可以進行遷移數據
很方便的支持請求 header 和請求參數的設置
支持不同的認證機制,包括 Basic Auth,Digest Auth,OAuth 1.0,OAuth 2.0 等
響應數據是自動按照語法格式高亮的,包括 HTML,JSON 和 XML
postman軟件功能
1、模擬各種HTTPrequests
從常用的GET、POST到RESTful的PUT、DELETE…等等。甚至還可以發送文件、送出額外的header。
2、Collection功能(測試集合)
通過collection的歸類,我們可以良好的分類測試軟件所提供的API.而且Collection還可以Import或是Share出來,讓團隊里面的所有人共享你建立起來的Collection。
3、人性化的Response整理
一般在用其他工具來測試的時候,response的內容通常都是純文字的raw,但如果是JSON,就是塞成一整行的JSON。這會造成閱讀的障礙,而Postman可以針對response內容的格式自動美化。JSON、XML或是HTML都會整理成我們可以閱讀的格式
4、內置測試腳本語言
支持編寫測試腳本,可以快速的檢查request的結果,並返回測試結果
5、設定變量與環境
Postman可以自由設定變量與Environment,一般我們在編輯request,校驗response的時候,總會需要重復輸入某些字符,比如url,允許我們設定變量來保存這些值。並且把變量保存在不同的環境中。
postman安裝步驟
1、從華軍軟件園下載postman軟件包,使用鼠標左鍵雙擊打開安裝文件。
2、postman會自動開始安裝,請耐心等待。
3、postman安裝完成后會自動打開主界面。
postman使用方法
postman怎么測試接口
接口測試請求分為多種情況,這里介紹get、post、帶cookie、帶Header、上傳文件五種請求的測試。
一、get請求:get請求是最簡單的請求方式,輸入URL就能完成。
1、新建一個tab頁面
2、輸入URL ,選擇請求方式為GET
3、點擊“send”按鈕
4、查看返回碼是否異常。
二、post請求:post請求跟get的區別除了請求方式不同之外,還需要添加請求體,請求體內容多半為json格式。
1、新建一個tab頁面
2、輸入URL ,選擇請求方式為POST
3、輸入請求體內容
4、點擊“send”按鈕
5、查看返回碼,返回信息等
三、帶cookie的請求:該請求需要在Heards里面添加Cookie
1、新建一個tab頁面
2、輸入URL ,選擇請求方式為POST
3、輸入請求體內容
4、在Heard里面添加Cookie信息
5、點擊“send”按鈕
6、查看返回碼,返回信息等
四、帶Header的請求:該請求需要在Heards里面添加Cookie。
1、新建一個tab頁面
2、輸入URL ,選擇請求方式為POST
3、輸入請求體內容
4、在Heard里面對應的內容
5、點擊“send”按鈕
6、查看返回碼,返回信息等
五、文件上傳的請求:發送請求前需要先上傳文件。
1、新建一個tab頁面
2、輸入URL ,選擇請求方式為POST
3、輸入請求體內容,文件內容選擇file, 選擇本地的文件上傳
4、點擊“send”按鈕
5、查看返回碼,返回信息等
postman常見問題
postman如何發送json參數
1、在地址欄里輸入請求url:http://127.0.0.1:8081/getmoney
2、接着選擇“POST”方式。
3、在“headers”添加key:Content-Type , value:application/json
4、然后點擊"body",''raw''並設定為JSON。
5、接着添加:{"userid": 1}
6、最后點擊send發送即可。
二、如何實施自動化測試呢?????
Postman接口測試自動化介紹
前言:平時可能大家只是簡單用postman來看一些請求返回的數據。其實它還具有很強大的接口自動化測試功能,它其實自己就提供了一個框架,它是采用js腳本編寫的。其功能百度都可以查到使用方法,但感覺有點零散,我這里整理了一下,把使用postman進行接口測試的方法整合了,圖文並茂,能快速掌握其使用。
1、postman簡要說明
Postman是一款功能強大的網頁調試與發送網頁HTTP請求的Chrome插件,其提供了客戶端和插件方式供大家使用。它除了方便開發調試外,對測試人員也有很大的作用,是接口自動化測試的好幫手,每個迭代版本發布時都可以通過postman執行一遍自動化接口用例,快速確保接口正確性,提高測試效率。下面進入正題,直接介紹使用它來進行接口自動化測試。
2、postman實現接口自動化測試
首先下載postman客戶端安裝包,然后按照提示安裝,不細說。安裝完后打開界面如下:
通過左邊菜單欄創建接口測試用例,主要代碼編寫區域為pre-requestScript和Tests,如圖:
Postman提供了全局變量和局部變量的設置,提高了編寫測試腳本的方便性,postman主要采用js腳本編寫。直接上常用的公共全局變量:
assertNotTimeout
var hasResponse=postman.getResponseHeader('Content-Type')?true:false; if(!hasResponse) tests['服務端在超時前沒返回任何數據,請檢查相關服務、網絡或反向代理設置(以下跳過其他斷言)']=false;
logParams
if(hasResponse) tests[`[INFO] 請求參數(超時沒返回時不解析):${JSON.stringify(request.data)}`]=true;
getResponseJson
try{if(hasResponse) var json=JSON.parse(responseBody);}catch(err){ tests['服務端沒返回合法的JSON格式,請檢查相關服務、網絡或反向代理設置(以下跳過其他斷言)']=false; tests[`[INFO] 返回:${responseBody}`]=true; console.error(err);};
assertType
var assertType=(name,value,type)=>{let isType=(type==='array')? Array.isArray(value):typeof value===type; tests[`${name}為${type}(實際值:${value})`]=isType;};
assertEqual
var assertEqual=(name,actual,expected)=>{tests[`${name}等於${expected}(實際值:${actual})`]=actual===expected;};
assertNotEqual
var assertNotEqual=(name,actual,expected)=>{tests[`${name}不等於${expected}(實際值:${actual})`]=actual!==expected;};
設置方法如下:
設置完后保存即可,然后在編寫測試腳本直接使用即可,下面是腳本編寫樣例:
var data="劉德華和天天向上的故宮還在";
pm.environment.set("data",data);
上面是設置發送請求前的data數據,參數以{{data}}方式表示,如圖:
請求數據准備完成后,開始編寫測試腳本,測試腳本根據自己需要編寫,以下僅供參考。全局變量使用方法如下:
eval(globals.assertNotTimeout);//判斷是否超時
eval(globals.getResponseJson);// 未超時,解析返回的JSON對象
eval(globals.assertNotEqual);// 返回元素是否與預期值不一致
assertNotEqual('code',json.code,403);//判斷返回的code不是403
一般情況下前面三個請求需要一起寫,具體如圖:
腳本編寫完畢后,通過以下方式執行接口自動化:
點擊run后會出現新的窗口:
設置完如上參數后,直接點擊Run AutoTest按鈕即可,執行結果如下:
以上操作即完成了一次接口的測試,如需要進行某個接口的壓力測試,可以單獨設置迭代次數。
3、postman使用外部數據進行接口自動化
如果需要使用外部數據文件進行測試,方法如下:
先准備好外部數據,一般使用csv文件,可以直接用txt文件編寫,然后保存成.csv格式文件,格式如下(第一行一定要寫參數化的名稱,帶中文的值需要保存為utf-8格式,否則后面預覽時會出現亂碼):
然后定義需要參數化的位置和名稱:
在測試執行前使用如下方式指定該參數化需要匹配的值:
pm.environment.set("name", data.name);//這里指定了參數化位置對應的值
console.log(data.name);//這里是日志打印
然后再編寫測試用例,如:
eval(globals.assertNotTimeout);
eval(globals.getResponseJson);
eval(globals.assertEqual);
assertEqual('code',json.code,200);
編寫完成腳本后,同樣通過collection runner執行:
執行前可以打開log工具檢查下執行時內容是否正確,按ctrl+alt+c調出日志工具,最后直接執行,效果如下。
4、postman生成request代碼
postman除了進行接口測試外還能生成支持多種語言的request代碼,方便使用,步驟如下:
以上為postman比較實用的功能,百度上都有,這里整合了一下供大家使用,方便大家快速學習。