Jmeter 多个threadgroup 中的配置元件会一次性进行初始化

Life is short , "play" more!
本文来自lihao's Blog,转载请注明。

例如3个threadGroup,每一个threadGroup中都会定义了 一些配置原件,例如 用户定义变量,  jdbc 链接配置等。  当执行testplan(测试计划)时, 这些配置元件会一起初始化, 而且变量是全局共享,不是属于自己threadgroup 独立使用的。  

例如此类场景下, 我会看到一些错误日志。

 

2017-06-05 16:53:04,755 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: MySQL
2017-06-05 16:53:04,756 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: MySQL_finance
2017-06-05 16:53:04,756 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: MySQL_pay
2017-06-05 16:53:04,756 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: MySQL
2017-06-05 16:53:04,756 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: MySQL_finance
2017-06-05 16:53:04,756 ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: MySQL_pay

 

是因为我在多个threadgroup中,定义了同样变量的 数据库连接配置。 这样他会提示一些重复定义的。 可见。

1)  多个threadgroup中的配置元件,是在测试开始之前一起进行初始化的。 (不管你的testplan是否勾选了,  顺序执行 threadgroup 的选项。 )

2) 配置元件中的变量是测试计划共享的, 所以会有潜在的冲突问题。 这是一个多人写作进行开发jmeter测试脚本时必须要提前考虑的问题。 !

 

 

此篇文章已被阅读1218 次


发表评论

电子邮件地址不会被公开。 必填项已用*标注