性能测试是:验证在各种性能负载场景下 ,系统的表现是否符合预期。
一个性能测试场景, JMeter称之为 test plan ,中文翻译为 测试计划
实际上,一个 JMeter的测试计划 对应 性能测试的一个场景,其实也就是一个 测试用例 。
应该先准备好 性能测试用例, 然后再用JMeter对应配置好一个测试计划来对应它。
每个测试计划都可以保存在一个单独的文件中。
JMeter的测试计划,具体里面的内容(怎么测),根据你设计好的测试用例,在这个下面添加相应子节点定义。
首先,必须定义用户访问的行为。 就是用户 先访问哪个网页,发出哪些HTTP请求,再访问哪个网页,发出哪些HTTP请求。
根据用例,往往需要模拟 多种 用户行为, 每种行为的用户有多少个。
JMeter 把一个用户的行为 用一个线程来执行。
JMeter 把同一种用户的行为和数量, 用线程组来定义,代表有一批用户,都是这样的行为。
JMeter 把每个节点称之为 element ,翻译为中文叫 元件 ,或者 元素
Ramp-Up 时间 意思是 所有用户上线的总时间,以秒为单位。
比如5,就表示总共耗时5秒,如果是 5个用户,那就意味着 每隔1.25秒上线一个: 5秒/(5-1) = 1.25
Loop Count循环次数 意思是 每个用户 做线程组里面定义的动作行为 多少轮 。 缺省就做一轮。
这个线程组里面 的 行为定义,也就是这类用户 先访问哪个网页,发出哪些HTTP请求,再访问哪个网页,发出哪些HTTP请求, 这个行为怎么定义呢?
一个具体的请求,是通过 Sampler 取样器 来 定义的。
通常最常用的就是这个 HTTP请求取样器(可自命名)。
右键添加即可。
可以自己命名,命名完后要点一下别的才会更新显示
比如,现在我们要做的一个性能测试用例 需要模拟的行为 如下:
假如120个用户在60秒内一次上线,如下设置:
上图是我设置好的取样器,因项目而异:
例如visits:
填好协议、IP、端口、路径(F12里找URL)
为了避免每次都输入除路径这些信息,可以添加一个HTTP默认请求值
当然,熟悉后使用录制功能,能迅速得到所有访问页,省去一个一个添加的麻烦
添加查看结果树,可以看到测试细况: