JMeter-把指定数据写入Execl

前言

大家在使用JMeter的工作中,很多人都习惯用execl表格写测试用例,就想着读取表格中的数据,然后再把运行的结果写到表格中。今天我们就来学习一下如何将指定数据写入Execl表格中吧!

一:添加HTTP默认请求和CSV数据文件设置

 

 

测试数据文件:

 

 

二:添加setUp线程组,添加JDBC Connection Configuration,配置好数据库信息

 

三:在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 '"';

八:查看运行结果

 

posted @ 2020-03-11 21:35  一步一脚印丶  阅读(2354)  评论(0编辑  收藏  举报