zoukankan      html  css  js  c++  java
  • 为什么在Jmeter用Groovy写JSR223脚本

    问题

    • 什么是JSR223脚本?
    • 为什么用Groovy来写JSR223脚本?
    • 在Jmeter中写JSR223脚本容易出错(缺少代码提示),怎么办?

    什么是JSR223脚本?

    JSR223脚本可以用于像 sample 一样执行,还能进行创建、更新变量等计算逻辑,包含:JSR223 Sampler,JSR223 预处理程序,JSR223 后置处理程序,JSR223断言……

    JSR223脚本有一个显著提升性能的特性:编译,这个特性取决于(2选1):

    • 使用 Script files 编写脚本,当 ScriptEngine 启用了该特性后,Jmeter 会编译并缓存脚本文件
    • 或者勾选『Cache compiled script if available』,注意:当勾选该特性后,需要注意以下两个事项:
      • 脚本中不要使用J meter 变量或 Jmeter 函数(如:${user}, ${__MD5(test,)}),如果使用了,则会在第一次调用后缓存结果值,在下一次调用则会直接使用缓存的值
      • 用于编写脚本的语言引擎必须实现 JSR223 可编译接口(Groovy 是其中之一,java、beanshell 和 javascript 不是)

    为什么用 Groovy 来写 JSR223 脚本?

    以下列出我认为用 Groovy 的理由:

    • 如上面所述,Groovy 的语言引擎实现了 JSR223 可编译接口,开启『编译』特性后能提升性能
    • 语法相对于『Java、Beanshell』,更为简洁,且不容易出错
    • Groovy 可直接调用『Java库』,功能全面

    以下列出不用其他语言的理由:

    • 使用 Java、Beanshell 无法使用泛型,写出的代码不符合平时的代码习惯
    • Jmeter使用中,性能上不如 Groovy
    • JavaScript仅支持 ES5 语法

    在Jmeter中写JSR223脚本容易出错(缺少代码提示),怎么办?

    见我的另一篇文章:在Idea中编写Jmeter JSR223脚本(Groovy)

  • 相关阅读:
    原理Lambda表达式
    关于Web.config的debug和release.config文件
    利用GeoIP数据库及API进行地理定位查询 Java
    JSONP跨域的原理解析
    如何处理JSON中的特殊字符
    IIS下防止mdb数据库被下载的实现方法
    点击文字选中radio
    关于微信40029错误
    nopcommerce的WidgetZones
    js判断移动终端(手机浏览器)
  • 原文地址:https://www.cnblogs.com/testopsfeng/p/14629162.html
Copyright © 2011-2022 走看看