在自动化性能测试中,参数化的目的是尽可能的去模拟真实的用户场景。因为在实际应用中是很少会存在同一个账号密码重复登录系统N次的场景,这时一般可通过对用户名与密码字段进行参数化来模拟用户实际操作。
我所知道的,Jmeter一共有四种参数化方式,而常用的以下两种:
一、Jmeter函数助手_CSVRead
1、上方菜单栏选项-->函数助手对话框,选择_CSVRead
2、函数参数说明:
1)CSV file to get values from | *alias:参数化的文件路径;
2)CSV文件列号| next|*alias:文件起始列号。列号是从0开始的,第一列0,第二列1,第三列2,以此类推。点击【生成】,就会自动生成我们需要的参数化函数;
3)字符串:参数化后的参数,在使用的过程中直接引用即可;
3、使用参数
4、验证是否参数化成功(可用断言)
修改进程数,运行脚本,在察看结果树中的请求中可看出参数是否参数化成功。
二、配置元件CSV Data Set Config
1、添加配置元件
2、参数说明
1)Filename:文件名,保存参数化数据的文件目录,可以为相对路径或者绝对路径;
2)File encoding:文件的编码格式,UTF-8即可;
3)Variable Names(comma-delimited):参数名称。文件中有几列参数,这里就写几个,参数之间用分隔符隔开,可以这样引用${username},${pwd};
4)Delimitet:参数文件分隔符,用于在Variable Names中分隔参数,与参数文件中的分隔符保持一致;
5)Allow quote data?:是否允许引用数据。默认为false,为“true”时对全角字符的处理将会出现乱码 ;
6)Recycle on OF?:是否循环读取参数文件内容。因为CSV Data Set Config一次读入一行,分割后存入若干变量中交给一个线程,如果线程数超过文本的记录行数,那么可以选择从头再次读入。
7)Stop thread on EOF?:当Recycle on EOF为False时(读取文件到结尾),停止进程。当Recycle on EOF为True时,此项无意义;
3、使用变量
4、验证是否参数化成功
与上述函数助手中同理,察看结果树中的对应的请求参数即可。
____世间文字八万个,唯有情字最杀人