咱們在作測試的時候都會有一個驗證點,咱們一般把這個驗證點叫作斷言,斷言經過了就會說明咱們的這個用例是經過的,固然這麼強大的postman也是有斷言的,咱們一塊兒學習下如何經過postman增長斷言。java
postman中的斷言是經過javaScript語言編寫的,咱們能夠在postman客戶端中直接編寫,斷言會在請求返回以後顯示,並根據斷言的pass\fail狀況體如今最終測試結果中程序員
確定有人會說,我不會javaScript語言怎麼編寫? 是否是還要從新學習了? 固然不是的了。postman官方怎麼可能沒有考慮到這種狀況呢,官方在tests下方給出能夠選擇的一些斷言內容。固然這些已經足夠咱們測試用來驗證用例了。編程
話很少說咱們直接開始執行json
點擊postman中的tests進入到編寫斷言腳本地方less
咱們這裏經過get的方式簡單介紹斷言的方法使用post
咱們先進行構思問題若是這個是咱們的接口請求,咱們如何作驗證點(斷言)?學習
一、能夠根據頁面上的字符串是否存在能夠判斷測試
二、判斷狀態碼是否爲200spa
咱們就經過上面兩個驗證點編寫斷言3d
能夠看到這個斷言爲狀態碼爲200,斷言是成功的
若是斷言類型多的話,比較不容易查看,咱們能夠直接本身修改斷言的類型名稱
這樣的話對於英語很差的同窗也能夠一目瞭解的知道本身增長了什麼斷言和那個斷言請求成功和失敗
其餘的斷言腳本都表示什麼意思呢?
一、檢查響應主體中是否包含字符串
pm.test("Body matches string", function () { pm.expect(pm.response.text()).to.include("string_you_want_to_search"); });
二、檢查談響應主體是否等於字符串
pm.test("Body is correct", function () { pm.response.to.have.body("response_body_string"); });
三、檢查JSON值
pm.test("Your test name", function () { var jsonData = pm.response.json(); pm.expect(jsonData.value).to.eql(100); });
四、Content-Type標頭存在
pm.test("Content-Type header is present", function () { pm.response.to.have.header("Content-Type"); });
五、響應時間小於200毫秒
pm.test("Response time is less than 200ms", function () { pm.expect(pm.response.responseTime).to.be.below(200); });
六、狀態碼爲200
pm.test("Status code is 200", function () { pm.response.to.have.status(200); });
七、代碼名稱包含一個字符串
pm.test("Status code name has string", function () { pm.response.to.have.status("Created"); });
八、成功的POST請求狀態代碼
pm.test("Successful POST request", function () { pm.expect(pm.response.code).to.be.oneOf([201,202]); });
固然了,若是會點javaScript語言的大佬們,能夠進行本身編寫斷言內容哦~
若是感受寫的對您有幫助,點個關注,持續更新中,若是有不懂地方能夠在下方留言,看到後第一時間都會回覆哦~~~