學習:介面測試實戰(全域性變數、環境變數)
阿新 • • 發佈:2022-02-10
json:資料型別(字串)
主要包括鍵值對用{}表示,
列表用[]表示。
字典:(物件)
主要包括鍵值對用{}表示,
列表用[]表示。
全域性變數
能夠在所有介面請求裡面使用的變數叫全域性變數
環境變數
環境變數是能夠讓程式碼在不同的環境下去執行的,環境變數其實也是全域性變數
http協議預設埠80
https協議摸摸人埠443
能夠在所有的介面請求裡面使用的變數
發現問題:
1、access_token鑑權碼需要手動輸入太麻煩
解決方案:
//介面關聯-第一種方式json提取器
//1、獲取相應的主體正文 var resbody = responseBody; console.log(rebody);//2、如果返回的是json字串,可以轉換成json物件然後解析 var jsonbj = JSON.parse(responsBody); consloe.log(jsonbj.access_token); //3、把提取到的token放到全域性變數 pm.globals.set("access_token", jsonbj.access_token);
//介面關聯第二種方式正則表示式提取
//1、獲取相應的主體正文 var resbody = responseBody; console.log(rebody); //2、使用正則表示式提取 var value = responseBody.match(newRegExp(‘“access_token”:"(.*?)"’)); console.log(value[1]); //3、把提取到的token放到全域性變數 pm.globals.set("access_token",value[1] );
//其他方法
//獲取響應頭的值:需要從響應頭取值時應用 var types = postman.getResponseHeader('Content-Type') console.log(types) //獲取響應的cookie資訊 var csrf_toke = postman.getResponesCookie('csrf_token') console.log(csrr_token['value'])
2、建立標籤介面標籤名不能和已存在的標籤碼重複
一、Postman的動態引數
postman內建動態引數
{($timestamp)}生成當前時間戳(不是萬能的,沒辦法做斷言)
{($randomint)}生成0-1000的隨機數
{($guid)}生成一個隨機的guid的字串
自定義動態引數-在請求之前(Pre-requestScript)
/
1、手動製造時間戳
var times = Date.now(); pm.globals.set("times",times);
2、等待3s作用
const sleep = (millisecconds)=>{ const start = Date.now(); while(Date.now()<=start+milliseconds){} }; sleep(3000);
2.1刪除標籤只能刪除固定id標籤
解決方案:
增查改查刪查介面測試業務流程
/
var res = JSON.parse(responseBody); pm.globals.set("tag_id",res.tag.id );
3、環境是寫死的沒有辦法讓我們用例在不同環境下執行
解決方案:
設定環境變數