jmeter介绍
1.Jmeter程序的基本概念

1) Test plan :测试计划,创建一个测试脚本的基础,后续的步骤都会存储在这里,是其他元件的容器
2) Thread Group :线程组,用来模拟用户发送请求,可以通过设置Number of Threads设置并发请求数量。Ramp-up period表示完成线程创建的时间,比如图中线程数为10,Ramp-up period为100,则线程的启动时间间隔为100/10=10秒,即每十秒会创建一个线程,共100秒完成; Loop Count为循环次数,默认为1,勾选Infinite则无限循环;Same user on eacd iteration指的是在当前线程组里面,每一次循环都使用相同的用户;specify Thread lifetime(调度器)指的是整个线程运行的时间。

3) HTTP Request (Sampler) :用来定义请求的相关信息。按需填入相关信息即可;注意当访问的接口涉及到修改mysql数据库时,如果请求json中包含中文字符,可能需要将内容编码填入UTF-8,防止数据库乱码。

4) 监听器 :包含查看结果树、汇总报告等;用于查看请求响应的结果及响应时间等信息;
5) 逻辑控制器 :允许自定义JMeter发送请求的行为逻辑,与HTTP请求配合使用可以模拟复杂的请求排列组合
6) 断言:用于判断请求响应的数据是否符合预期结果
7) 定时器:负责定义请求(线程)之间的延迟间隔,模拟对服务器的连续请求
8) 前置处理器和后置处理器负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的设置,后置处理器则常常用来处理响应的数据。
2. 压测指标
在进行压力测试时,结果部分可以通过聚合报告来查看,其中包含指标如下

1) Samples : 指对应请求在压测过程中所发出的请求数
2) Average : 指单个请求的平均响应时间,单位为(ms)
3) Median :指对应请求响应时间的中位数,可以配合平均值确定该接口的响应时间范围,单位为(ms)
4) Error%:接口请求中返回值出现错误的百分率,可以在查看结果树中找到对应的请求值,再配合服务端的输出日志帮助定位错误原因
5) Throughput :简称TPS,吞吐量,默认为展示每秒处理的请求数,数值越小表示服务器处理能力越强
3.常用元件
1)HTTP信息头管理器 :用于定制Sampler发出的HTTP请求的请求头的内容。不同的浏览器发出的HTTP请求具有不同的Agent。

2) HTTP Cookie 管理器 :用于管理Test Plan运行时的所有Cookie;它可以自动储存服务器发送给客户端的所有Cookie,并在发送请求时附加上合适的Cookie.也可以在HTTP Cookie Manager中手动添加一些Cookie。

3)User Defined Variables :用于存储一些用户自己定义的变量,在后面的请求中可以进行调用。

4) CSV Data Set Config :用于调取外部参数使用,可以和循环控制器配合使用,达成不同的请求排列组合

5) Response Assertion :响应断言。Pattern Matching Rules部分可以设置匹配规则;Patterns to Test模块可以输入需要断言的字符;如图则表示接口返回值内需要包含该字符串。


浙公网安备 33010602011771号