1

我正在使用 JMeter 进行负载测试,我正在创建 1000 个线程,每个线程发送一个 http 请求,如下所示:

{"email" : "test${__threadNum}@test.com"}

这很好,现在我需要添加一个更复杂的场景。我需要传递使用我的自定义加密方法加密的电子邮件。

something like:  {"email" : MyCustomClass.encypt("test${__threadNum}@test.com")}

有没有办法从 JMeter 调用自定义 java 类。

4

2 回答 2

1

您可以使用 JSR 223 采样器或预处理器,并使用 Groovy 作为底层语言。为此,在 jmeter/lib 文件夹中添加 groovy-all.jar。

如果你想使用你已经存在的 jar,也把它放在 jmeter/lib 中。

于 2013-05-20T18:11:23.393 回答
1

我找到的最佳解决方案是编辑文件 BeanShellFunction.bshrc 并在其中添加 java 方法,

String encryptSession(String email) {
    // TODO encrypt session!
    return new String(email);
}

然后将其添加到 http 请求正文中:

${__BeanShell(encryptSession("test${__threadNum}@test.com"))}}
于 2013-06-26T13:43:44.353 回答