参数化的必要性
JMeter参数化在很多情况下是不可缺少的一部分。为什么这么说呢?那是因为我们在压力测试中要模拟真实的情况,就需要在一些地方进行参数化,以达到真实模拟的要求。比如测试系统的登录功能,如果要模拟很多用户的登录操作,那么在压力测试中就需要脚本去获取不同的用户名或者密码进行登录系统的操作。
需要做参数化的场景
那么此时就抛出了第一个问题:哪些地方需要参数化呢?有一个原则就是,你要思考两个虚拟用户在测试过程中需要哪些地方不一样。那么那些地方就需要做参数化,比如登录用户名和密码设置的地方。需要模拟不同类型的产品,那么产品相关的元素,比如产品名称或者产品ID可能就需要进行参数化。基于这些原则,我想大家都应当清楚哪些地方需要做参数化了
如何做参数化
JMeter在做参数化时,我们需要考虑怎么做。一般来说,有如下4种方式:
- 用户参数方式,英文名称为”User Parameters”,它的使用路径为 Add -> Pre Processors -> User Parameters. 它的最大特点是允许为每个单独的线程(虚拟用户)去指定参数值。该组件配置界面如下,可以发现它是每个参数值,可以很方便地锁定一个值,比如第一个虚拟用户(User_1), 当测试场景在运行时,对于此虚拟用户,它对应的参数Para1的值只能是”val1-1″
- 函数助手方式,使用此方法路径为 Tools -> Function Helper Dialog ,然后选择Function “__CSVRead”,然后再配置函数参数,其中第一个为配置数据文件(CSV)的路径,第二个为要获取第1列,所以这种方式也可以适用多列的情形。其中列数的设置是从0开始的,所以下面截图中的“1”表示获取第2行的数据。
- 用户自定义变量,使用此方法的路径为 Add -> Config Element -> User defined Variables。如下图所示,可以很方便地设置参数名和参数值,唯一不太好的是,这些值都是不能变化的,每次调用都是一致的。
- CSV 数据集配置,使用路径为Add -> Config Element -> CSV Data Set Config.它是比较常用的参数化的方式,用的是比较多的。笔者希望读者都能掌握这种方式,是比较好用的。它比较灵活,使用起来比较方便,特别针对大数据量的参数化时,是强烈建议大家使用的。
如果大家对以上参数化方式有什么问题,欢迎下方留言交流,谢谢!
© 版权声明
文章版权归作者所有,未经允许请勿转载。