背景:之前性能测试过程中写过一些脚本,时间久了有点忘记,通过整理之前写的脚本可以快速回忆起来,也给要学习jmeter的同学一些参考。
如下所示,是一个流程(数据准备)记录了通过账号登录、创建所需的测试数据、以及登出操作。【其中并没有平常所见到的并发操作,因为所举的例子是并发前的数据准备步骤,实际的并发脚本相对比较简单,这里不作赘述,举这个例子是更加强调下:jmeter可以用作性能测试数据的构造】
![](https://img.haomeiwen.com/i15110677/29696a889a966f4f.png)
(1)在用户自定义变量中,可以添加需要重复用到的参数。
![](https://img.haomeiwen.com/i15110677/a9a03ad851ac6882.png)
(2)请求共用的参数可以放到信息头管理器中
![](https://img.haomeiwen.com/i15110677/15f147369f4a35ca.png)
(3)后置处理器:json Extractor 提取上一个请求的结果作为下一个请求的参数
![](https://img.haomeiwen.com/i15110677/3b6e03181335480e.png)
注意:在写正则表达式时需要注意,如果格式为如下{"statusCode":200,"data":[{"code":"407949","id":"××××××××"}]} 那么应写为$.data[0].id
(4)循环控制器配合配置使用
![](https://img.haomeiwen.com/i15110677/4d6aebc82eb3afa0.png)
(5)正则表达式提取器json Extractor 有类似的效果,均是提取返回值作为参数。只是方法略有不同
![](https://img.haomeiwen.com/i15110677/4cc784a5bf97e8fe.png)
如上所示,“()”中的就是需要获取的值。其中,${count}是一个计数器,用于生成不同的参数,以便后续使用。
![](https://img.haomeiwen.com/i15110677/409eda4c0d8db6d5.png)
(5)在编写请求时需要注意,以下两种参数的区分(之前有踩过坑)
![](https://img.haomeiwen.com/i15110677/53cf0595d7abab2f.png)
![](https://img.haomeiwen.com/i15110677/d888994419e13184.png)
网友评论