gpt4 book ai didi

groovy - 我们如何在 Groovy 中使用内置的 jmeter 函数?

转载 作者:行者123 更新时间:2023-12-02 06:38:18 25 4
gpt4 key购买 nike

我似乎花了太长时间试图找到一种获取信息的方法,例如我想使用的machineName https://jmeter.apache.org/usermanual/functions.html在两种不同的编程语言中,在 Groovy 代码(而不是 BeanShell 等)中,以及在 Java 中。

在groovy中,我尝试使用ctxvarsprops但没有成功。

同样,如果能够发现如何在 Java Sampler 中执行相同的操作,那就太好了。据我所知,我可以获得一些信息,例如使用 JMeterContextService.getContext().getThreadNum() 获取线程号,但我还没有找到交互/使用主要 JMeter 功能的方法。

一种方法可能是重新实现这些功能,尤其是在描述它们的地方,例如“machineName 函数返回本地主机名。这使用 Java 方法 InetAddress.getLocalHost() 并将其传递给 getHostName()”,但我希望这不是必需的。 .

谢谢。

最佳答案

  1. 最好的选择是将函数调用放在“Parameters”部分,并将其返回值作为脚本正文中的 Parametersargs[0] 引用,例如

    def machineName = Parameters

    JMeter Function via Parameters

  2. 您可以通过 MachineName class 的实例来完成此操作像:

    def machineName = new org.apache.jmeter.functions.MachineName().compute()
  3. 您可以使用JMeterUtils来做到这一点辅助类如:

    def machineName = org.apache.jmeter.util.JMeterUtils.getLocalHostName()
  4. 最后(但不建议这样做,因为编译脚本的缓存不可用)您可以将任何 JMeter 函数内联到脚本主体中

    def machineName = '${__machineName()}'

有关 JMeter 中 Groovy 脚本编写的更多信息:Apache Groovy - Why and How You Should Use It

关于groovy - 我们如何在 Groovy 中使用内置的 jmeter 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48384721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com