在 Jmeter 中读取环境变量值

Syl*_*obo 4 jmeter environment-variables performance-testing

我想通过在环境变量中定义它们来参数化测试数据路径、结果路径、服务器和端口。

System.getenv("Jmeter_Result")通过在BeanShell 处理器中使用它,我能够在一定程度上实现这一点。但我需要使用配置元素来获取值。

你能提出建议吗?我正在使用 Jmeter 3.1。

use*_*900 6

如果环境变量通过系统属性可用,那么 JMeter 可以使用该${__P("Jmeter_Result")}函数访问它。

否则,使用 -J 选项传递环境变量的值很简单:

jmeter -JJmeter_Result=$Jmeter_Result
Run Code Online (Sandbox Code Playgroud)


Fre*_*ang 6

根据https://jmeter.apache.org/usermanual/functions.html#what_can_do${__BeanShell( ... )}也可以帮助您解决这个问题。

例如,我们的一个 API 需要 OAuth2 身份验证,而我所做的是:

- Thread Group
    - User Defined Variables
        client_id     = ${__BeanShell( System.getenv("client_id") )}
        client_secret = ${__BeanShell( System.getenv("client_secret") )}
    - Once Only Controller
        - OAuth2 HTTP Request
    - API HTTP Request
Run Code Online (Sandbox Code Playgroud)


Dmi*_*i T 5

通过JMeter Plugins可以使用__env() 函数,它似乎是您正在寻找的东西。

您可以使用JMeter 插件管理器__env()安装 JMeter和其他自定义 JMeter 功能

JMeter 插件自定义函数。