jmeter提取json中的多个返回值写入CSV文件供下一个接口调用(实操)

1、写一个线程,查询当前所有的病人数据

2、接口返回所有病人的数据后,下一个查询接口需要使用患者的床位与患者pid数据(床位与pid一一对应 不重复)。使用json提取器,提取接口返回值中的床位bedno、患者pid(两个变量,每个变量存在多个不同值)

Apply to:应用范围,选默认的main sample only就行了

Names of created variables:接收提取值的变量名,多个变量用;分割,

JSON Path expression:json path表达式,用来提取某个值,多个表达式用;分割,

Match No.(0 for Random):取第几个值,多个值用;分割(0:随机,默认;-1所有;1第一个值),非必传

Compute concatenation var(suffix_ALL):如果匹配到多个值,则将它们都连接卡里,不同值之间用都好分割;变量会自动命名为_ALL

Default Values:缺省值,匹配不到值的时候取该值,可写error;多个值用分号分割;非必传

3、可以使用调试取样器查看是否提取成功 。提取出的数据格式为bedno_x,pid_x

4、beanshell后置处理器:将提取出的值写入CSV文件

复制代码
FileWriter fstream = new FileWriter("D:/lijing/New Folder/pid.txt",false);//这里结尾的true表示续写,即数据每次写入都在最末行续上;默认值为false:每次跑这个脚本都会覆盖原有内容再写入
BufferedWriter out=new BufferedWriter(fstream);
num=vars.get("pid_matchNr");//一共提取了多少组数据
//log.info(num);
for(int i=1;i<=(Integer.parseInt(num));i++){ //每组数据写入CSV文件
//	log.info("i="+i);
//	log.info(vars.get("id_"+i));  查看是否获取到变量
//	log.info(vars.get("name_"+i));
    out.write(vars.get("bedno_"+i)+",");
	out.write(vars.get("pid_"+i)+"\n");
}
out.close();
fstream.close();

5、下一个接口使用csv中的数据。新建CSV数据文件设置,配置如下

新建http请求,前端传参引用csv文件中的数据

相关推荐
是小恐龙啊8 小时前
【测试报告】云枢馈赠系统(Java+Selenium+Jmeter自动化测试)
selenium·测试工具·jmeter
沉下去,苦磨练!11 小时前
kafka的部署和jmeter连接kafka
分布式·jmeter·kafka
程序员的世界你不懂16 小时前
Jmeter的元件使用介绍:(三)配置元件详解02
jmeter
程序员的世界你不懂1 天前
Jmeter的元件使用介绍:(三)配置元件详解01
jmeter
软件测试-阿涛1 天前
【性能测试】Jmeter+Grafana+InfluxDB+Prometheus Windows安装部署教程
测试工具·jmeter·性能优化·压力测试·grafana·prometheus
YuforiaCode3 天前
JMeter每次压测前清除全部以确保异常率准确(以黑马点评为例、详细图解)
jmeter
程序员的世界你不懂3 天前
Jmeter的元件使用介绍:(四)前置处理器详解
开发语言·python·jmeter
清心歌3 天前
Apache JMeter 使用记录踩坑
jmeter·apache
程序员的世界你不懂3 天前
Jmeter的函数助手使用
jmeter
程序员的世界你不懂3 天前
Jmeter常见问题分析(1)乱码问题
jmeter·dubbo