繁体   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