簡體   English   中英

使用jsr223將JavaScript函數添加到jMeter

[英]Adding javascript function to jMeter using jsr223

我正在嘗試使用JSR223將jMeter測試計划與javascript函數一起使用。 它用於解碼字符串。 我有以下兩個功能需要在jmeter中實現:

function AESEncryption(text, passphase, bytessize) {

var key = CryptoJS.enc.Utf8.parse('ABCDEFGHIJKL1234567891234');
var iv = CryptoJS.enc.Utf8.parse('1234567890123456');
var blocksize = bytessize / 2;
var encrypted = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(text), passphase, key,
{
    keySize: bytessize,
    iv: iv,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7
});
var dta = String(encrypted);
return dta;}


function AESDecryption(text, key, bytessize) {
try {
    //alert(text + ":" + key + ":" + bytessize);
    var e = CryptoJS.AES.decrypt(text, key, bytessize);
    //alert("Ec:" + e);
    return CryptoJS.AES.decrypt(text, key, bytessize).toString(CryptoJS.enc.Utf8);
}
catch (Error) {
    return "";}}

您可以使用load指令將外部JavaScript導入JSR223 Sampler。

  1. https://github.com/brix/crypto-js/releases下載最新版本的crypto-js(我使用3.1.9)並將其解壓縮到JMeter的“ bin”文件夾中
  2. 將下一行添加到JSR223腳本的開頭:

     load('crypto-js-3.1.9/crypto-js.js'); 
  3. 您應該能夠直接在JSR223 Sampler中訪問JavaScript函數。

    JSR223 JavaScript


請注意,通過Rhino / Nashorn解釋的JavaScript具有嚴重的性能缺陷,因此,如果您打算通過許多線程調用此函數,則在Groovy中重寫函數會更有意義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM