Postman學習筆記(一)

1、簡介

  Postman是一種網頁調試與發送網頁 http 請求的 chrome 插件。咱們能夠用來很方便的 模擬 get 或者 post 或者其餘方式的請求來調試接口。chrome

2、安裝

  一、chrome瀏覽器插件(瀏覽器逐漸不支持,不推薦)json

  二、本地應用程序瀏覽器

    Postman官網下載:https://www.postman.com/downloads/cookie

3、界面介紹

  以下圖所示。less

4、Postman功能:接口測試

  接口測試流程:dom

  Postman接口測試的必要條件:請求地址、請求協議、請求方式、請求頭、參數。post

  接口測試用例的基本測試點如圖所示:測試

5、Postman功能:設置變量

  Postman接口關聯的幾種方式:設置環境變量、全局變量、Test設置變量ui

一、環境變量

  Postman中能夠設置多種不一樣環境,方便Collections切換在不一樣的環境中運行而不用再次修改接口信息。url

方法一:以下圖所示。

  點擊右上角的齒輪,點擊Add按鈕可設置環境變量(局部變量),另外一個是全局變量(Globals)。以下圖所示。設置環境變量,切換環境,可調用url變量。

方法二:直接在代碼中設置變量

  能夠在Postman功能區中的pre-request Script中設置環境變量,以下圖所示。

1 pm.environment.set("variable_key", "variable_value");

二、全局變量

  上述設置環境變量,提到Globals按鈕點擊便可設置全局變量。或直接在代碼中設置全局變量。能夠在Postman功能區中的pre-request Script中設置全局變量

1 pm.globals.set("variable_key", "variable_value");

三、Tests設置變量

  Tests設置變量:獲取響應數據的值

1 獲取響應數據json對象
2 //使用var關鍵字,定義一個變量jsonData,用來接收接口的返回結果
3 var Data = pm.response.json();
4 //從響應數據提取出token
5 var test = Data.token;
6 //設置token,token設置成環境變量
7 pm.enviroment.set("token", token);

  Tests設置變量:經過tests,先把接口的返回結果設置成環境變量,而後後續接口就能夠經過環境變量的值進行關聯。

重要知識點:

  •   環境變量優先級高於全局變量,全部接口均可以使用全局變量
  •   變量在Postman中的使用爲{{variableName}},當Postman解析變量時,字符串{{variableName}}會被替換爲相應的值
  •   pre-request Script讀取變量
1 pm.globals.get("variable_key");
2 pm.variables.get("variable_key");
3 pm.environment.get("variable_key");

四、動態變量(隨機參數)

  大批量測試以及自動化測試過程當中,對同一個不容許重複的參數進行傳參時,能夠保證其不被重複

  經常使用的三種方式:

  • {{$guid}}:添加一個V4風格GUID
  • {{$timestamp}}:將當前的時間戳,精確到秒,精確到毫秒時,後面添加 000便可
  • {{$randomInt}}:添加0~1000之間的隨機整數

6、Postman功能:測試沙箱

  Postman沙箱(Sandbox)是一個JavaScript執行環境,當您爲請求編寫預請求腳本和測試腳本時,編寫的代碼在這個沙箱中進行。

  Postman測試沙箱其實就是結合了JS腳本完成測試中的功能,在請求發起先後實現部分測試操做。   

  測試沙箱經常使用功能:            

    (1)Pre-request Script 在請求前,腳本設置前置操做如設置變量等。            

    (2)Tests在請求後對狀態碼、響應頭、響應正文等信息進行斷言操做。

一、Pre-request Script

  上述中已經提到,在請求接口前,進行環境變量與全局變量的設置與管理。例 :

1 pm.globals.get("variable_key");
2 pm.globals.set("variable_key", "variable_value");
3 pm.environment.set("variable_key", "variable_value");
4 pm.environment.get("variable_key");

二、Tests(斷言)

  經常使用Tests響應斷言的幾種方式:

(1)Response body:Contains string(校驗返回結果中是否包含某個字符串)

1 pm.test("Body matches string", function () {
2     pm.expect(pm.response.text()).to.include("string_you_want_to_search");
3 });

(2)Response body:Is equal to a string (校驗返回結果是否等於該字符串)

1 pm.test("Body is correct", function () {
2     pm.response.to.have.body("response_body_string");
3 });

(3)Response body:JSON value check(校驗返回結果中某個字段值是否等於某個值)

1 pm.test("Your test name", function () {
2     var jsonData = pm.response.json();
3     pm.expect(jsonData.value).to.eql(100);
4 });

(4)Response header:Content-type header check(校驗響應頭是否包含某個值)

1 pm.test("Content-Type is present", function () {
2     pm.response.to.have.header("Content-Type");
3 });

(5)Response time is less than 200ms(校驗響應時間是否少於200ms)

1 pm.test("Response time is less than 200ms", function () {
2     pm.expect(pm.response.responseTime).to.be.below(200);
3 });

(6)Status code: Code is 200(校驗響應頭是否包含某個值)

1 pm.test("Status code is 200", function () {
2     pm.response.to.have.status(200);
3 });

 7、Postman功能 :Cookie操做

  打開管理COOKIES模式,請單擊發送按鈕下的Cookies連接。PostMan的本機應用程序提供了一個  MANAGE COOKIES 模式,可以讓您編輯與每一個域相關聯的Cookie。 

  建立一個cookie:要爲域添加新的cookie,請單擊添加Cookie按鈕。 將建立根據HTTP狀態管理標準的預生成的cookie字符串,但您可使用其下方顯示的文本輸入進行編輯。

點擊保存按鈕將保存到相關域下的應用程序的Cookie存儲區。以下圖所示。

8、Postman功能:集合測試執行

  集合是一組請求,運行集合,就會依據所選的環境變量,發送集合中全部的請求,若是配合腳本就能夠構建集成測試套件,在接口請求之間傳遞數據,並構建接口實際工做流的鏡像。若是想要自動化測試接口,運行集合是很是必要的

  集合運行器的相關設置。

 9、Postman功能:Monitor監控接口

Monitor簡介

  • 是基於Postman集合API的靈活監控
  • 監控API的正常運行時間、響應能力和正確性
  • 提供監測結果的詳細報告
  • 對全部Postman用戶每個月提供1000個免費的監控請求

一、點擊須要監控集合右側箭頭,選擇Monitors,點擊「Add a monitor」

 二、監控器的相關設置

相關文章
相關標籤/搜索