欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報邀請碼778899分享:postman使用教程

柚子快報邀請碼778899分享:postman使用教程

http://yzkb.51969.com/

postman接口測試

postman頁面介紹

請求:

params:get請求的參數(shù)authorization:鑒權(quán)heander:請求頭

accept:客戶端接受的數(shù)據(jù)類型content-type:客戶端發(fā)送給服務(wù)器的數(shù)據(jù)類型user-agent:客戶端的類型xmlhttprequest:異步請求… body:post請求傳參

none:沒有參數(shù)from-data:文件上傳x-www-from-urlencodeed:表單請求(鍵值對)raw:使用原始數(shù)據(jù)上傳(json、xml、html等)binary:二進(jìn)制文件上傳 pre-request script:前置腳本,請求之前的腳本,對請求參數(shù)進(jìn)行處理tests:請求之后的腳本,可用作斷言、設(shè)置環(huán)境變量settings:設(shè)置cookis:是postman用于自動管理cookie的功能

響應(yīng):

body:返回值

pretty:以不停的合適查看返回結(jié)果raw:以文本格式查看返回結(jié)果preview:以網(wǎng)頁格式查看返回結(jié)果 cookies:響應(yīng)的cookiesheaders:響應(yīng)頭testresults:斷言的結(jié)果

調(diào)試:

console:控制臺用于調(diào)試,可以顯示出接口請求信息,在pre-request script和tests編寫代碼后,也可在控制臺查看結(jié)果。

//打印返回值:console.log(變量名)

console.log(responseBody);

返回值類型為字符串 要轉(zhuǎn)化為json對象(通過key取值) json.parse(responseBody)

1、請求接口

填寫接口地址、接口請求類型、接口請求頭、接口請求參數(shù),點擊send發(fā)送請求,完成一個接口的請求。

2、斷言

完成接口請求后,需要做斷言,通過判斷接口返回的數(shù)據(jù)是否符合預(yù)期,從而判斷接口的請求是否符合預(yù)期,在批量執(zhí)行接口時,斷言能直接判斷接口請求是否正確。斷言腳本需放在Test中。

//斷言的名稱,可自定義

pm.test("添加成功", function () {

//用jsonData變量存儲json類型的接口返回數(shù)據(jù)

var jsonData = pm.response.json();

//判斷接口響應(yīng)碼是否與預(yù)期集合中的某個值一致。判斷jsonData.code的值是否為200

pm.expect(jsonData.code).to.eql(200);

});

接口的返回結(jié)果為

{

"msg": "入庫成功,報表生成",

"code": 200,

"data": {

"id": "1578726211851386880"

}

}

我用code:200作為斷言的依據(jù),jsonData.code獲取code值,code:200則接口斷言成功,否為失敗。 在Test Results中可以查看斷言結(jié)果,pass為斷言成功 斷言方式有多種可根據(jù)需求來選擇。

3、關(guān)聯(lián)

關(guān)聯(lián)就是將上一個接口的返回值提供給下一個接口使用,這里我們用登錄接口進(jìn)行舉例,登錄成功后會返回token,token要作為下一個接口的請求頭,才能請求數(shù)據(jù)。 方法一: 提取token并設(shè)置為環(huán)境變量

//用jsonData變量存儲json類型的接口返回數(shù)據(jù)

var jsonData = pm.response.json();

//用token存儲jsonData.token的值,并設(shè)置為環(huán)境變量

pm.environment.set("token", jsonData.token);

點擊右上角眼睛,可查看設(shè)置成功的環(huán)境變量,這樣方便下一個接口引用 引用變量,除了在Pre-request Script中,其余模塊都可用{{變量名}}引用變量

方法二: 正則表達(dá)式關(guān)聯(lián)接口

console.log(responseBody);

//通過正則匹配值,match匹配

var datas =responseBody.match(new RegExp('"access_token":"(.*?)"'));

console.log(datas[1])

4、動態(tài)參數(shù)

第一種:系統(tǒng)自帶的動態(tài)參數(shù)

{{$timestamp}} //動態(tài)時間戳

{{$randomlnt}} //動態(tài)0-1000的整形

{{$guid}} //動態(tài)的guid字符串

第二種:自定義動態(tài)參數(shù)

var times =Date.now();

pm.globals.set(“times”,times);

定時執(zhí)行5s

const sleep=(milliseconds)=>{

const start =Date.now();

while (Date.now()<=start+milliseconds){}

};

sleep(5000);

一旦需要斷言隨機(jī)數(shù),那么就必須使用自定義動態(tài)參數(shù)并且要注意如下事項:

在斷言中不能使用{{}}引用變量

需要通過pm.globals.get(“變量名”),獲取變量

5、批量執(zhí)行測試用例

迭代:迭代次數(shù)

延遲:

data:數(shù)據(jù)驅(qū)動

6、postman的參數(shù)化(csv,json)

json格式:

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-fD3yHNRG-1664971568134)(image/軟件測試/1664892897525.png)]

csv格式

文件中數(shù)據(jù)默認(rèn)為全局變量用{{}}引用即可

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-GEPOEMMP-1664971568134)(image/軟件測試/1664893744628.png)]

必須帶請求頭的接口

cookie鑒權(quán)

cookie是一段鍵值對的文本

cookie可以傳輸token和session

1.當(dāng)客戶端第一次訪問服務(wù)器的時候,那么服務(wù)器就會生成cookie,并且通過響應(yīng)里面的set-cookie傳輸給客戶端??蛻舳藭詣颖4?。 2當(dāng)客戶端第2-N次訪問服務(wù)器的時候,那么客戶端就會自動的讀取本地的cookie,然后根據(jù)主機(jī)IP或域名添加對應(yīng)的cookie從而實現(xiàn)鑒權(quán)??蛻舳说谝淮卧L問服務(wù)器時,服務(wù)器會產(chǎn)生cookie,并通過

postman自動處理cookie,但不是萬能的,會有坑

7、mock測試

mock:模擬,

應(yīng)用場景:

1、前后端分離的架構(gòu)下前后端開發(fā)是不同步的,前端的數(shù)據(jù)展示依賴于后端的接口,這時候就需要使用mock測試

前后端連調(diào):去掉mock,讓前端訪問真實的后端接口。

2、當(dāng)被測系統(tǒng)調(diào)用第三方的接口,這時想測試這個接口的錯誤場景。

3、去甲方展示demo,靜態(tài)網(wǎng)頁。

8、接口加解密

1、對稱式加密(私鑰加密)

常見有AES,DES,Base64,特點:加密和解密都是相同的密鑰

AES加密,AES 加密最常用的模式就是 ECB模式 和 CBC 模式,當(dāng)然還有很多其它模式,他們都屬于AES加密。ECB模式和CBC 模式倆者區(qū)別就是 ECB 不需要 iv偏移量,而CBC需要。所以在用ECB摸索時只需傳參密鑰、明文,而CBC模式要添加iv偏移量

postman中使用CryptoJs庫進(jìn)行加密,CryptoJs支持常見的加密方式AES,MD5等

簡單的AES加密

//CryptoJS.AES.encrypt("需要加密的內(nèi)容","密鑰")

var aes_value=CryptoJS.AES.encrypt("admin","mashang").toString();

console.log(aes_value); //輸出值

AES-128-CBC加密

//方法1

//定義一個aes加密函數(shù)

function encrypt(content, keyStr,iv) {

let key = CryptoJS.enc.Utf8.parse(keyStr);

let new_iv = CryptoJS.enc.Utf8.parse(iv);

let srcs = CryptoJS.enc.Utf8.parse(content);

let encrypted = CryptoJS.AES.encrypt(srcs, key, {iv: new_iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });

return encrypted.toString();

}

//函數(shù)初始化需要傳三個值,"待加密字段","密鑰","iv偏移量"

var aes_username=encrypt("admin","key123","iv123");

//打印出aes_username的值

console.log(aes_username);

//方法2

const key = CryptoJS.enc.Utf8.parse("密鑰值"); //這里使用base64 或者 utf8 要看要求,加解密一致即可

const iv = CryptoJS.enc.Utf8.parse('iv偏移變量'); //十六位十六進(jìn)制數(shù)作為密鑰偏移量

//定義aes加密函數(shù)

function Encrypt(word) {

let srcs = CryptoJS.enc.Utf8.parse(word);

let encrypted = CryptoJS.AES.encrypt(srcs, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 });

return encrypted.toString();

}

//加密用戶名稱、密碼

var aes_username=Encrypt("admin");

var aes_password=Encrypt("123456")

//將加密的用戶名、密碼設(shè)置為局部環(huán)境變量

pm.environment.set("aes_username",aes_username);

pm.environment.set("aes_password",aes_password);

//打印出加密后的用戶名和密碼

console.log(aes_username);

console.log(aes_password);

AES-128-ECB加密

DES加密

CryptoJS.DES.encrypt("需要加密的內(nèi)容","密鑰")

var aes_value=CryptoJS.DES.encrypt("admin","ceshi").toString();

console.log(aes_value);

Base64加密

CryptoJS.enc.Base64.stringify("需要加密的內(nèi)容")

//先把待加密字符轉(zhuǎn)換為utf-8格式

var utf8_str=CryptoJS.enc.utf8.parse("admin");

var base64_str=CryptoJS.enc.Base64.stringify(utf8_str);

console.log(base64_str);

2、非對稱加密(雙密鑰加密 ):RSA

有公鑰和私鑰兩個密鑰,公鑰加密,私鑰解密

postman本身不支持這種加密方式,需要引用外部的js文件

3、只加密不解密,MD5、SHA、HmacSHA

MD5 32位小寫加密,

var md5_str=CryptoJS.MD6("admin").toString();

console.log(md5_str)

SHA 256 解密

var sha_str=CryptoJS.SHA256("admin").toString();

console.log(sha_str)

HamcSHA1

//CryptoJS.HmacSHA1("待加密的字符","密鑰").toString()

var HmacSHA1_str=CryptoJS.HmacSHA1("admin","ceshi").toString();

console.log(HmacSHA1)

4、Sign簽名,比混合加密更嚴(yán)格的加密方式,sign的生命周期一般是1-3分鐘

首先獲取到所有的參數(shù)(params和body)

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-18maeX04-1664971568134)(image/軟件測試/1664371555633.png)]

把所有的參數(shù)組合成一個字典

自定義一個根據(jù)ky的ACSII進(jìn)行升序排列的算法,把所有的參數(shù)和值進(jìn)行升序排列

獲取一個訂購好nonce

獲取一個當(dāng)前時間戳

把訂單號nonce加到參數(shù)之前和時間戳加到參數(shù)之后

把最終的參數(shù)進(jìn)行加密(混合)處理,生成sign

把sign簽名在請求頭里面?zhèn)鹘o后端

柚子快報邀請碼778899分享:postman使用教程

http://yzkb.51969.com/

參考文章

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://m.gantiao.com.cn/post/18364660.html

發(fā)布評論

您暫未設(shè)置收款碼

請在主題配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄