1. 程式人生 > >JMeter-SHA256加密演算法介面測試

JMeter-SHA256加密演算法介面測試

前言

我們已經學過了如何利用python指令碼對SHA256加密介面進行測試,還沒學會的小夥伴們可以看回我寫的隨筆Python-SHA256加密演算法介面測試,那麼,對於SHA256加密演算法介面,我們如何使用JMeter來進行測試呢?下面,我們來學習兩種方法。

介面文件如下:

介面地址: http://47.96.181.17:8098/login

返回格式: json

請求方式: POST

請求引數:{"userName":"您的使用者名稱","password":"sha256加密後的密碼"}

請求頭:

鍵:Content-Type 值:application/x-www-form-urlencoded

鍵:X-Requested-With 值:XMLHttpRequest

成功返回示例:

{

'jumpUrl': 'index',

'success': 'true',

'systemUser': {'avatarName': None,

'avatarPath': 'file/avatar/2020-02-06/',

'nickname': 'sqqdcl3',

'rememberMe': False,

'securityDigest': None,

'userId': '1',

'userName': 'sqqdcl'}

}

失敗返回示例:

{'error': {'password': '密碼錯誤'}, 'success': 'false'}

方法一:使用JMeter的自帶函式

一:開啟函式助手,選擇__digest

 

 

引數含義:

  • Digest algorithm 演算法摘要:MD2、MD5、SHA-1、SHA-224、SHA-256、SHA-384、SHA-512
  • String to be hashed:要計算的字串;
  • Salt to be used for hashing (optional):用於計算雜湊的鹽(可選項);
  • Upper case result, defaults to false (optional):結果大寫,預設為false(可選),即預設摘要值為小寫
  • Name of variable in which to store the result (optional)儲存結果的變數名(可選)

 

 

二:新增HTTP資訊頭管理器

三:新增http請求

 

 

四:新增監聽器-察看結果樹,點選檢視執行後的結果

 

 

方法二:新增“BeanShell 預處理程式”

一:在“執行緒組”上新增前置處理器-BeanShell PreProcessor

 

 

在Script寫入以下程式碼:

import org.apache.commons.codec.digest.DigestUtils;
String password = "111111";
String pwd_sha256 = DigestUtils.sha256Hex(password);
#結果是大寫:String pwd_sha256 = DigestUtils.sha256Hex(password).toUpperCase();
vars.put("pwd-sha256", pwd_sha256);  

二:新增HTTP資訊頭管理器

 

三:新增http請求

 

四:新增監聽器-察看結果樹,點選檢視執行後的結果

&n