JMeter調用python腳本(自動化生成加密參數)

在進行接口壓測時,要求請求參數自動獲取當前時間,與其他參數按一定規則拼接後進行MD5加密,加密數據有效期30分鐘的設計,意味着要獲取當前時間、進行字符串拼接、進行MD5加密後再傳參。如果進行人工替換,測試人員的工作量會非常繁瑣,而藉助於python腳本實現,則可以有效提升測試效率。

1.編寫python腳本:

1.1實現獲取當前時間-time(參數之一)

1.2進行字符串拼接-str(含time,所以要保持數據的一致性)

1.3對str進行MD5加密

1.4將要傳給JMeter的參數打印出來。

腳本實現起來非常簡單,直接代碼:

1.5測試腳本執行結果:下圖中的打印的信息即JMeter預期要獲取的參數信息

2.通過JMeter的OS Process Sampler讀取批處理文件(..\..\getMD5.bat),該批處理文件非常簡單,就是執行前面的python腳本。備註:嘗試了在JMeter線程組中添加JSR223 Sampler方式,無法達到預期效果(這種方法大家嘗試後,如果好用,歡迎在評論區留言分享或討論)

3.添加正則表達式,提取要參數,此處需要提取兩個參數,當前時間-time,按規則生成的MD5值-MD5Code(也可以在一個正則表達式中提取)

4.在請求中設置參數化,讀取python腳本中自動生成的參數;

5.驗證結果,JMeter可以正常讀取python生成的參數,JMeter的擴展性非常好,測試時可以根據需要編寫python腳本或jar包進行輔助測試。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章