Jmeter-圖片轉base64
簡單記錄學習過程,若有錯誤,敬請斧正,不勝感激。
目前Jmeter只用於接口測試,部分參數未深入使用。一般只需關注帶*的參數即可完成一個請求,其余維持默認選項即可。
版本:
Jmeter-5.4.1
JAVA-15.0.1
用途:
將圖片文件轉換為base64編碼
具體用法:
添加自定義拓展函數
教程參考:https://www.cnblogs.com/qiaoyeye/p/7218770.html
該教程距今已有一段時間,完全按照教程生成的jar包,經測試不可用。
需要更換新的庫。步驟如下:
- 刪除BASE64Encoder庫,將
import sun.misc.BASE64Encoder;
刪除 - 添加Base64庫,
import java.util.Base64
- 將
BASE64Encoder encoder = new BASE64Encoder();
替換為Base64 encoder = new Base64();
除以上步驟外,其余步驟按照原帖即可。
測試是否成功添加
- 打開函數助手:工具-函數助手對話框
- 選擇 MyBase64,填入圖片路徑和存放base64編碼的變量
圖片路徑注意:\反斜杠和空格
點擊【生成】,稍等片刻,就會在下方展示出來。且自動復制了調用函數。
字符串過長,會導致jmeter卡頓。
在需要的地方調用
請求體,通過JSON中提交,一般是post:
在正確的地方,直接粘貼上一步中的函數字符串即可
若通過表單提交,一般是get:
斜杠/會被進行url編碼,變成%2F,需要注意。
需注意接口接受的數據格式。
如圖是通過站長工具轉換出來的編碼,會比以上函數的結果多了紅框內的內容:
如需要字符串和函數拼接:可以通過V函數(執行嵌套函數引用),進行拼接。
如圖所示,該函數完成了將字符串"data:image/jpg;base64,"和Mybase64函數調用結果的拼接。