访问MySQL数据库的数据库URL的Jmeter JDBC连接配置参数化

Nel*_*lly 6 parameters jdbc jmeter

如何在JDBC连接配置下参数化数据库URL?正常参数化在这里不起作用。

这不起作用:

Database URL: jdbc:mysql://${mysql_hostname}:${mysql_port}/${mysql_database}
JDBC Driver Class: com.mysql.jdbc.Driver
Username: ${mysql_username}
Password: ${mysql_username}
Run Code Online (Sandbox Code Playgroud)

Dmi*_*i T 3

要点是JDBC 连接配置测试元素是在 JMeter 变量之前初始化的,因此如果您想参数化它,您应该采取一些不同的做法:

  • 在需要时使用__P() 函数,例如:

    Database URL: jdbc:mysql://${__P(mysql_hostname,)}:${__P(mysql_port,)}/${__P(mysql_database,)}
    JDBC Driver Class: com.mysql.jdbc.Driver
    Username: ${__P(mysql_username,)}
    Password: ${__P(mysql_password,)}
    
    Run Code Online (Sandbox Code Playgroud)

相关的 JMeter 属性可以在user.properties文件中设置,例如:

mysql_hostname=localhost
mysql_port=3306
mysql_database=test
mysql_username=johndoe
mysql_passowrd=secret
Run Code Online (Sandbox Code Playgroud)

或者通过-J 命令行参数,例如:

jmeter -Jmysql_hostname=localhost -Jmysql_port=3306 -Jmysql_database=test -Jmysql_usename=johndoe -Jmysql_password=secret
Run Code Online (Sandbox Code Playgroud)

有关 JMeter 属性以及设置和覆盖它们的方法的更多信息,请参阅Apache JMeter 属性自定义指南