先简单介绍下我们这边的一个场景,用户现在使用登录请求进来,用户绑定了多家门店,然后下单,下单接口完成后,正常响应结果会返回一个字段值,我们会使用该字段的值作为请求另外一个接口报文的参数值。
setUp线程组创建
话不多说,我们现在先添加一个setUp线程组来处理登录请求
创建完setUp线程组之后,我们鼠标移动到它哪里,添加http 请求 来操作登录
然后编辑http请求的报文
如果是json格式,我们可以设置添加对应的http头信息管理,设置content-type格式
由于登录接口报文会返回cookie数据,我这里使用的添加json提取器来获取
为了下面业务线程组来统一获取,这里我设置的添加全局变量
COOKIE_JSESSIONID为json提取器设置的变量
对应的脚本为${__setProperty(COOKIE_JSESSIONID_GLOBAL, ${COOKIE_JSESSIONID},)}
添加完成后,我们的setUp线程组就创建完成了
业务接口线程组创建
这里我们鼠标移动到添加好的业务线程组来添加cookie管理器
${_P(COOKIE_JSESSIONID_GLOBAL)}就可以获取setUp设置的全局cookie变量值
紧接着,我们创建业务下单接口
这里我们思考下,我这里并发压测,肯定使用的是动态的参数值呀,怎么来做呢?
这里我是添加csv数据文件
csv文件根据变量名称哪里逗号隔开,来设置对应变量的值
对应csv文件的内容必须使用上面变量名称定义的顺序,中间用英文逗号隔开
业务请求接口使用${变量名称}来获取csv设置变量的值
同样添加http头信息管理设置json格式
添加json提取器来获取报文返回的字段值,当然这里是用来处理下面请求另外一个接口使用的
如果我们的接口压测结果使用的json格式某一字段返回值来判断该业务请求是否成功,可以添加json断言来处理
这里使用的是$.success来区分的
上面的操作添加处理完成后,我们就可以添加查看结果树、聚合报告来详细查看我们接口的压测结果
关联业务接口添加
由于我们这里的接口请求报文依赖上面下单接口,正常响应成功的报文。所以我这里添加了一个if控制器
在业务线程组,点击右键添加控制器
这里判断上面下单接口报文json提取器的变量是否为空
如果不为空才会进行下面的接口请求
关于下面添加关联接口的请求,以及json断言、http信息头管理器,聚合报告,查看结果树
这里就不在详细介绍了,同上面添加业务线程组的步骤。这里截图看下关联接口请求报文是如何设置报文参数值的 ${变量名称}
上面的步骤完事之后,我们就可以针对添加的线程组设置多个线程来并发压测数据了
如何启动?
如何清除之前测试的结果树和汇总报告
右键点击
添加httpCookie管理器,添加这个cookie管理器是因为下面的业务接口请求,header头需要设置,如果是其他jwt等方式,可以添加http信息头管理器来操作,原理类似