背景:
笔者在做接口/性能测试过程中,遇到需要大量造测试数据得场景,或者通过接口测试回归整个业务链路等,通过一点点积累,实现了jmeter脚本内无写死数据,全程都是变量,参数,函数实现想要得测试数据,做到一次编写,在任何测试环境配置基本的环境下即可使用的目标。现分享给大家,欢迎沟通交流
1、整体概览
2、 beanshell自动获取本地文件,自动新增用户,并初始化
用户新增脚本
3、初始化用户数据,初始化业务数据,登录token获取,并保存
token,user ,account等写入本地
4、造基础业务数据,java自动获取N天前N天后特定时间戳
脚本body体做到全部为参数,变量函数等,可应用到任何测试环境
json提取器,beanshell里编写java程序
5、 json格式数据JSONObject和JSONArray处理,java获取返回的动态数据,循环参数到下一步业务
循环次数动态获取
脚本中也使用到其它函数,如下
日期函数:
${__longSum(${__time},+86400000,)},
${__longSum(${__time},-86400000,)}
循环控制器:
${Name_#}
计数器:
starting value:1,
递增:1,
max value:${Name_#},
引用名:N,
参数化:${__V(Name_${N})}