JMeter-连接MySql数据库而不使用JDBC连接配置和采样器
如何在不使用JDBC连接配置和JDBC采样器的情况下连接我的Sql数据库JMeter-连接MySql数据库而不使用JDBC连接配置和采样器,jmeter,jmeter-5.0,jmeter-maven-plugin,Jmeter,Jmeter 5.0,Jmeter Maven Plugin,如何在不使用JDBC连接配置和JDBC采样器的情况下连接我的Sql数据库 我想在不使用JDBC连接配置和JDBC采样器的情况下与我的SQL数据库建立连接,因为出于安全原因,我不想将数据库凭据保留在.JMX文件中。您不需要将密码(/user)放在JMX文件中,您可以使用属性加载值 例如,用于从属性而不是硬编码值获取值: ${__property(password)} property函数返回JMeter属性的值 可以通过添加到属性文件或命令行参数来设置属性 Java系统属性和JMeter属性可以
我想在不使用JDBC连接配置和JDBC采样器的情况下与我的SQL数据库建立连接,因为出于安全原因,我不想将数据库凭据保留在.JMX文件中。您不需要将密码(/user)放在JMX文件中,您可以使用属性加载值 例如,用于从属性而不是硬编码值获取值:
${__property(password)}
property函数返回JMeter属性的值
可以通过添加到属性文件或命令行参数来设置属性
Java系统属性和JMeter属性可以直接在命令行上重写(而不是修改JMeter.properties)
-J[prop_name]
=[value]
定义本地JMeter属性
如果您不想使用JDBC测试元素来构建数据库测试计划,您可以随时切换到Groovy语言,并使用Groovy语言编写任何您想要的程序,在您的情况下,您的朋友就是 示例代码:
def dburl = 'jdbc:mysql://192.168.99.100:3306/mysql'
def user = 'root'
def password = props.get('db.password')
def driver = 'com.mysql.cj.jdbc.Driver'
groovy.sql.Sql.withInstance(dburl, user, password, driver) { sql ->
sql.query('select name,url from help_topic order by rand() limit 2;') { resultSet ->
while (resultSet.next()) {
def name = resultSet.getString(1)
def url = resultSet.getString('url')
log.info('Topic name: ' + name + ' topic url: ' + url)
}
}
}
示例输出:
这一行:props.get('db.password')
正在从读取值,您可以使用如下方法设置属性值:
有关Jmeter中Groovy脚本的更多信息,请参阅本文
你仍然需要有足够的时间
jmeter -Jdb.password=secret -n -t test.jmx -l result.jtl