body里写注释 postman_快速掌握Postman实现接口测试
快速掌握Postman實(shí)現(xiàn)接口測試
Postman簡介Postman是谷歌開發(fā)的一款網(wǎng)頁調(diào)試和接口測試工具,能夠發(fā)送任何類型的http請求,支持GET/PUT/POST/DELETE等方法。Postman非常簡單易用,可以直接填寫URL,header,body等就可以發(fā)送一個請求,用來測試api接口非常方便。
Postman的優(yōu)點(diǎn)- 使用簡單,無需搭建環(huán)境,直接使用,可以快速構(gòu)建請求。
- 保存以供以后回放使用。
- Postman有響應(yīng)結(jié)果的斷言功能,可以用來寫測試用例。
- 可以把測試用例放在同一個目錄下批量運(yùn)行管理,可以設(shè)置迭代次數(shù)。
- 可以設(shè)置環(huán)境變量,方便測試環(huán)境和生產(chǎn)環(huán)境使用同一套測試用例。
- 調(diào)試結(jié)果方便查看。
支持chrome插件和獨(dú)立應(yīng)用,下方為應(yīng)用下載地址。根據(jù)自己使用的操作系統(tǒng),選擇對應(yīng)的版本。
官方網(wǎng)站:https://www.getpostman.com/apps
下載完成后,直接點(diǎn)擊安裝,首次打開會有登錄頁面,建議注冊賬號登錄,這樣所有歷史記錄和集合數(shù)據(jù)將會免費(fèi)自動同步到云端,這樣切換不同設(shè)備就可以快速使用歷史數(shù)據(jù)了。
安裝完成后界面:
整體布局界面整體布局如下:
工具欄
- 新建按鈕:新建請求、集合、環(huán)境配置。
- 導(dǎo)入按鈕:導(dǎo)入Postman文件及文件夾。
- 運(yùn)行按鈕:批量運(yùn)行集合請求。
- 新建窗口按鈕:新建一個tab窗口。
- 同步請求-同步請求數(shù)據(jù)到本地 抓包圖標(biāo)-使用Postman抓取API請求和cookie
- 設(shè)置圖標(biāo)-應(yīng)用程序設(shè)置
- 通知圖標(biāo)-接收通知或廣播
- 分享圖標(biāo)
- 賬戶管理
左側(cè)面板
右側(cè)面板
下面簡單示例下Postman實(shí)現(xiàn)get和post請求最常用的請求方法有GET,POST,PUT和DELETE,它們的區(qū)別如下:
- GET請求:用于查詢獲取數(shù)據(jù)。
- POST請求:創(chuàng)建或更新數(shù)據(jù)
- PUT請求:更新數(shù)據(jù)
- DELETE請求:刪除數(shù)據(jù)
HTTP請求包含四個部分:URL,方法,header頭部和body主體。
構(gòu)建GET請求示例在url中輸入https://postman-echo.com/get?name=xiaoming&sex=男
get請求的參數(shù)在URL中,上面說過了get請求是查詢數(shù)據(jù),所以參數(shù)類型就是查詢參數(shù)。
構(gòu)建POST請求示例常見post請求的傳參方式
URL:https://postman-echo.com/post
方式一:表單提交,在body中選擇x-www-form-urlencoded
等價于application/x-www-from-urlencoded,會將表單內(nèi)的數(shù)據(jù)轉(zhuǎn)換為鍵值對。
方式二:raw 傳參
可以上傳任意格式的文本,可以上傳text、json、xml、html等,一般消息主體是序列化的JSON字符串。
方式三:Form-data 傳參
就是http請求中的multipart/form-data,它會將表單的數(shù)據(jù)處理為一條消息,以標(biāo)簽為單元,用分隔符分開。既可以上傳鍵值對,也可以上傳文件。
https://postman-echo.com/post
斷言Postman添加響應(yīng)處理,通過檢查響應(yīng)數(shù)據(jù)是否符合預(yù)期來判斷用例是否通過。Postman提供了很多常用斷言方式:比如對響應(yīng)狀態(tài)碼、響應(yīng)內(nèi)容等進(jìn)行斷言。Postman的代碼片段功能已經(jīng)把常見的斷言代碼示例已經(jīng)給我們寫好了,大家直接可以選擇使用。
常見的斷言代碼如下:
pm.test("Status code is 200", function () {pm.response.to.have.status(200); }); pm.test("Body matches string", function () {pm.expect(pm.response.text()).to.include("string_you_want_to_search"); }); pm.test("Your test name", function () {var jsonData = pm.response.json();pm.expect(jsonData.value).to.eql(100); }); pm.test("Body is correct", function () {pm.response.to.have.body("response_body_string"); }); pm.test("Content-Type is present", function () {pm.response.to.have.header("Content-Type"); }); pm.test("Response time is less than 200ms", function () {pm.expect(pm.response.responseTime).to.be.below(200); }); pm.test("Successful POST request", function () {pm.expect(pm.response.code).to.be.oneOf([201,202]); }); pm.test("Status code name has string", function () {pm.response.to.have.status("Created"); }); var jsonObject = xml2Json(responseBody);上述test['XXX']中"XXX",可以根據(jù)需要自行修改提示,運(yùn)行完成后,在下方Test Results顯示我們所定義的提示語句和測試結(jié)果。如果為 PASS ,測試通過,如果為FAIL,測試失敗。
斷言示例
創(chuàng)建集合并批量運(yùn)行測試用例集合,即是postman中的Collections,類似文件夾,可以把同一個項(xiàng)目的請求放在一個集合里方便管理和分享。測試人員下次測試可以直接從集合中找到要執(zhí)行的測試case。可以讓單個的request分組到一起,對每個request都有很多個testcase,都分組收藏到集合里面,進(jìn)行自動化測試和回歸測試。如果想將自己的集合分享給團(tuán)隊(duì)內(nèi)其他人,可以點(diǎn)擊Share按鈕進(jìn)行分享。
1.創(chuàng)建測試集:在左側(cè)面板下點(diǎn)擊New collections按鈕。
2.創(chuàng)建多條測試用例,點(diǎn)擊左側(cè)save按鈕,保存到創(chuàng)建的測試集中
3.點(diǎn)擊測試用例集邊上右邊的run按鈕,或者頂部菜單欄的Runner進(jìn)行運(yùn)行。
4.選擇環(huán)境信息、迭代次數(shù)、請求的等待時間。
5.運(yùn)行結(jié)果
環(huán)境變量和全局變量接口測試時,為了方便修改和管理環(huán)境和參數(shù),我們會把域名信息和請求的固定參數(shù)設(shè)為環(huán)境變量,把接口參數(shù)的請求或者返回參數(shù)中的固定值設(shè)為全局變量。
點(diǎn)擊右上角的眼睛按鈕,點(diǎn)擊Add,輸入環(huán)境名稱,以及環(huán)境的參數(shù)和參數(shù)值。點(diǎn)擊Edit添加全局變量名和變量值。
添加環(huán)境名稱,以及具體的參數(shù)名和參數(shù)值。
添加全局變量,輸入變量名和變量值。
修改上述用例
注:變量名要寫在雙花括號里,如下圖:
生成python代碼postman完成請求后,可以請求生成各種語言和框架的代碼片段。
點(diǎn)擊請求面板的code按鈕,選擇需要轉(zhuǎn)換的語言。
默認(rèn)是http模式
生成python請求代碼,大家也可以試試轉(zhuǎn)成其他語言。
如果覺得文章有幫助,歡迎轉(zhuǎn)發(fā),點(diǎn)贊。
關(guān)注公眾號【吾非同】。獲取軟件測試開發(fā)知識干貨分享,互聯(lián)網(wǎng)職場相關(guān),程序員成長。
總結(jié)
以上是生活随笔為你收集整理的body里写注释 postman_快速掌握Postman实现接口测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dvd清洗碟效果好吗_用什么清洗抽油烟机
- 下一篇: lisp xy轴不等比缩放_不就是用Py