0


JMeter 接口数据动态关联——提取接口的响应数据作为另一个接口的入参

一点儿心得记录。

涉及的技术:java基础、Jmeter的基础使用(主要涉及几个后置处理器)。

一、问题描述:

现有一个需求:我想将注册接口和创角创角动态关联起来,实现注册后的用户自动去创角,不需要我再手动输参。

两个接口在PostMan上的展示:
1、批量注册接口,该接口的入参“number”可批量指定需要注册的用户数,并通过响应结果userData返回注册成功的用户信息集合,其中userId为我需要的用户标识):

2、批量创角接口,该接口通过userId接收用户id集合,实现批量的创角操作:

备注:目的浅而已见,我要将addUserBatch接口返回的用户Id提取出来,拼接成addRoleBatch接口需要的userId入参格式,并实现参数化调用。

实现步骤:

1、打开jmeter,创建默认的线程组,将两个接口按顺序填入:

2、使用JMeter的“Json提取器”提取响应参数userId。

Json提取器的的使用方式:

调试过程可配合使用“调试后置处理程序”。

执行结果可以看出,userId_ALL参数已经离我们想要的参数只少了对中括号。

3、为提取出来的结果加上中括号。

添加“BeanShell 后置处理程序”,并使用java基础语法为提取的结果加上中括号,并将结果设置为变量userIds。( 建议为java脚本加上 try catch ,这样代码出现异常时,才会将异常内容输出在jmeter的控制台)

打开控制台后可看见日志输出,已达到我想要的入参效果。

4、将动态变量作为创角的入参,调用接口。

5、跑起来,查看结果(跑通,但是出现中文字符乱码),处理乱码可以通过添加一个“BeanShell 后置处理程序”,加一句代码:prev.setDataEncoding("utf-8");

6、乱码解决,完美结局:

总结:jmeter接口关联大致流程就这样,具体问题,具体情况,具体分析、解决。

标签: java jmeter

本文转载自: https://blog.csdn.net/Escorts/article/details/116707769
版权归原作者 Escorts 所有, 如有侵权,请联系我们删除。

“JMeter 接口数据动态关联——提取接口的响应数据作为另一个接口的入参”的评论:

还没有评论