使用JMeter时如何将指定数据写入Excel表格中?
前言
添加HTTP默认请求
测试数据文件:
添加setUp线程组
添加JDBC Request
因为我们创建表只需要执行一次,并不需要执行多次,所有也可以放在setup线程组中。此时的“仅一次控制器”,可加可不加。
CREATE TABLE IF NOT EXISTS runresult(
user varchar(16), pwd varchar(12),
code varchar(10),
msg varchar(32),
data varchar(128)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
添加线程组
添加线程组(设置循环5次),添加登录HTTP请求,写入正确的接口地址和参数。

添加后置处理器
在登录HTTP请求后添加后置处理器-JSON提取器(正则表达式提取器也可以)。
注:json提取器,一次提取多个,中间用分号,同时matchNo和DefaultValue值。还有,一次提取整个Response的json全部信息,单独用个$即可。
把响应信息写入数据库
添加JDBC Request请求,把我们响应的信息,写到数据库中。
注:sql语句,不建议大家用占位符的写法,因为json串的 { 在脚本中,会导致异常,需要特殊处理。因脚本中没有写表字段,所以要与创建表时,位置对应,否则,数据就会插错字段。
insert into runresult values('${mobile}','${passwd}','${code}','${msg}','${response}');
导出数据文件
添加一个JDBC Request请求,导出数据文件,因为这个我们也只需要执行一次,不需要方法执行,所以我们可以添加一个teardown线程组。
select * from runresult into outfile "/var/lib/mysql-files/result.xlsx" FIELDS TERMINATED BY "t" ENCLOSED BY '"';
最后查看运行结果就可以了。