jmeter使用篇01

前言

作为一名合格的开发人员,除了完成既定的业务需求,还需要对我们的接口进行自测,保证接口的性能问题,
使用postman一般方便接口测试,而在并发测试时,开源的jmeter是不错的选择。

转自:
https://www.cnblogs.com/leeboke/p/5227320.html
Jmeter - json参数处理
https://www.cnblogs.com/BlueSkyyj/p/8025007.html

1.1. 接口介绍

本次测试的接口采用内网中的通讯录查询接口进行测试,接口参数如下:

1.2. 使用Jmeter进行接口测试

1.2.1. 打开Jmeter

下载好Jmeter后,双击bin目录下的jmeter.bat文件:

1.2.2. 添加线程组

在“测试计划”上鼠标右键添加-->threads(Users)-->线程组,添加测试场景设置组件,接口测试中一般设置为1个“线程数”,根据测试数据的个数设定“循环次数”

1.2.3. 添加Http请求默认值

组件,在上步的线程组上右键添加-->配置元件-->HTTP请求默认值

当所有的接口测试的访问域名和端口都一样时,可以使用该元件,一旦服务器地址变更,只需要修改请求默认值即可。

1.2.4. HTTP请求构造

在“线程组”右键-->添加-->samlper-->“HTTP 请求”

在HTTP请求设置页面,录入被测接口的详细信息,包括请求路径,对应的请求方法,以及随请求一起发送的参数列表,配置如下:

1.2.5. 测试报告配置

在“线程组”右键-->添加-->监听器->查看结果树、用表格查看结果、Summary Report三种结果的报告展示

点击运行后,即可看到运行结果,结果如下:

从上述结果返回可以看出,使用【xx】测试,返回的结果有两个,另外在返回数据展示方面,除了上述默认的Text形式外,还可以选择HTML形式,更直观,如下:

另外的表格查看结果,选取一个展示,如下

1.2.6. 输入部分参数化

在实际测试中,不可能查询值测试一个输入值,还有其他测试数据,故引入参数化的概念,让一条用例循环执行,直到所有测试数据均测试完成,如下示例:

Jmeter参数化有4种方法,本例仅介绍最普遍及简单的1个方法,csv文件导入配置

1、准备参数文件

2、配置CSV数据设置配置项:在线程组右键添加-->配置元件-->CSV Data Set Config

3、修改3.2.4中构造的HTTP请求:username修改为参数,从csv文件中引用

4、修改测试计划,使得脚本重复

5、运行后,即可看到结果如下:

1.2.7. 从响应结果提取内容,进行断言  

上述结果,永远都会执行正确,只要请求发送成功,并没有对返回结果进行断言判断,本例介绍断言设置

1、正则表达式提取内容:从响应内容中提取内容与文件提取内容进行对比,本例采用对比的结果为:员工号

在通讯录查询的HTTP请求上右键添加-->后置处理器-->正则表达式提取器,配置如下:

关于正则表达式的规则,请自行查找文档学习,此处提取返回聂荣的员工号后,以test参数引用。

2、增加断言:以提取的员工号test和csv文件中读取的员工号进行对比,判断结果是否正确

在通讯录查询的HTTP请求上右键添加-->断言-->响应断言,配置如下:

在线程组右键添加-->sampler-->Debug Sampler:用于查看正则表达式提取的内容

3、运行后,查看结果

发现第二条参数用例执行结果失败,展开后,查看响应断言的详细信息,发现test并不匹配T123451,也就是说第二个测试人员的员工号不是T123451。

接下来我们查看详细的响应数据,看看问题到底在哪里

从上图可以看出,第二个测试人员的员工号为T12345,而不是T123451,所以断言不通过。

其实,此错误是csv文档中故意设置错误的,以验证断言的正确性。

备注

下面是几篇讲jemter的文章,很不错,可以阅览一下。
性能测试
tps指标
http://www.ha97.com/5095.html
老张讲性能测试
https://www.cnblogs.com/imyalost/

讲解jmeter如何使用的,还不错
https://www.cnblogs.com/leeboke/p/5227320.html

Jmeter - json参数处理
https://www.cnblogs.com/BlueSkyyj/p/8025007.html

转自:
https://www.cnblogs.com/xuwc/p/9034352.html
https://yq.aliyun.com/ask/325536

jmeter中的变量
https://www.cnblogs.com/jessicaxu/p/7512680.html
如何使用jMeter发送两个逻辑上相关的HTTP请求(采用事物控制器)
https://www.cnblogs.com/sap-jerry/p/8969507.html

Jmeter之逻辑控制器(Logic Controller)
https://www.cnblogs.com/puresoul/p/4886574.html

学习总结——JMeter做http接口功能测试

https://www.cnblogs.com/houzhizhe/p/6838731.html (含函数使用)

jmeter 中24个常见的函数

https://www.cnblogs.com/ai594ai/p/8420765.html
老张讲jemeter使用:
https://www.cnblogs.com/imyalost/p/7062784.html?utm_source=itdadao&utm_medium=referral
下载JMeter

地址:http://jmeter.apache.org/download_jmeter.cgi
JMeter安装+配置+运行
https://www.cnblogs.com/mgzc-1508873480/p/7040997.html

猜你喜欢

转载自blog.csdn.net/hbn1326317071/article/details/90664695