Jmeter 数据库配置池设置IP为参数
我在网上查了很多资料,发现jmter链接数据库的URL都是设置成固定值的。没有参数化。
当我需要使用配置文件链接不同服务器上的数据库的时候,发现无法实现。
原因在于:jmeter的元件执行优先级是配置文件最高,而配置文件内,几个用户定义的变量或者参数优先级是一致的。这就导致了JDBC Connection Configuration的地位与用户读取配置文件的地位一致。进而导致无法读取IP。
所以:
我在线程组之前增加了一个setUp Thread Group,并在里面使用BeanShell Sampler从配置文件读取IP,并将IP设置成全局变量。
1 ${__setProperty(DatabaseHost,${sql_IP},)}
而真正的我需要使用的线程组内去调用这个全局变量:
补充说明:
上方的设置IP为全局变量建议使用元件为BeanShell PostProcessor,因为我使用其他sample时,在windown上是成功的,但是将脚本迁移到linux后,就总是会被数据库拒绝,无法读取到IP。
jdbc链接池是跨线程组的,所以在setup内最好使用后置处理器去处理变量。
作者:Vsky
出处:https://www.cnblogs.com/VVsky/
交流群:636090586(备注博客园)
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果喜欢我的文章,请关注我的公众号