1

我有一个测量登录功能性能的场景,因为我使用 JSR223 预处理器使用 Javascript 加密我的密码,它大约 2000 行代码它工作正常它成功加密密码,我可以使用我的脚本登录它在小范围内工作正常用户数量。

如果我们要大量用户脚本一旦到达 JSR223 预处理器线程就非常快地完成前 3 个步骤,则需要很长时间来处理它会延迟性能测试。

有什么建议可以微调这个过程吗?

即使执行需要很长时间,我已经将缓存大小配置为 1024。

对于 600 个用户,需要 1 小时 +++ 时间才能完成 1 个主和 3 个从属环境的过程。

4

2 回答 2

0

负载测试应避免使用 Javascript。

最好的选择是使用:

  • 时髦的

  • 检查缓存编译键

  • 为每个测试元素输入一个唯一键

这将使 JMeter 编译脚本以获得最佳性能,请阅读以下内容以获取更多信息:

于 2016-04-27T19:02:35.273 回答
0

JavaScript 不是与 JSR223 PreProcessor 一起使用的最佳语言,它是通过RhinoNashorn引擎运行的,并且您的表达式一直在使用不太高效的方式从头开始评估。

根据JMeter Best Practices,建议使用Groovy脚本引擎。假设配置良好,您将能够将 groovy 脚本编译为本机 JVM 字节码,因此性能将远高于 JavaScript。

为了在 Jmeter 中获得 Groovy 支持,您只需要

  1. 下载groovy-all.jar
  2. 将文件拖放到 JMeter 安装的“lib”文件夹中
  3. 重启 JMeter

请参阅Beanshell 与 JSR223 与 Java JMeter 脚本:您一直在等待的性能下降!指南以获得更详细的解释和脚本最佳实践。

于 2016-04-27T15:26:41.743 回答