代码之家  ›  专栏  ›  技术社区  ›  Slimy43

JMeter使用传入参数控制线程组

  •  1
  • Slimy43  · 技术社区  · 7 年前

    我有一个由多个线程组组成的JMeter测试场景。我使用命令行参数来控制场景,以传入工作负载、线程数等。线程组始终是总线程数的固定百分比(例如,三个组的分割为40:40:20)。我想传入一个值,并计算三组的值。

    问题是,我唯一能想到的是在启动线程组中使用Beanshell采样器来计算线程,但我现在意识到,在这个采样器运行的时候,JMeter已经超过了为其他组设置线程的时间。因此,其他线程组以零线程结束。

    我认为我需要做的是将计算结果直接放入线程组的“用户数”框中,我认为这是Javascript。但我对语法不理解。有人能帮忙吗?

    哦,我知道在命令行中传递三个参数也就足够了,但是命令行来自Jenkins的一个作业,我想确保用户只需添加一个数字作为参数。

    1 回复  |  直到 7 年前
        1
  •  1
  •   UBIK LOAD PACK    7 年前

    不要在JMeter中使用\uu javascript,它会降低性能。

    可以使用 __groovy 功能:

    ${\u groovy(Math.round(props.get(“pct”).toFloat()*props.get(“threads”).toInteger(),)}

    并在命令行上传递或在用户中设置。属性

    • pct:用户百分比
    • 线程:线程总数

    这将是:

    -Jthreads=1000-Jpct=0.5