51Testing软件测试论坛

标题: Jmeter压力测试简单示例教程 [打印本页]

作者: 感悟时分    时间: 2019-4-2 14:04
标题: Jmeter压力测试简单示例教程

Jmeter是一个非常好用的压力测试工具。  Jmeter用来做轻量级的压力测试,非常合适,只需要十几分钟,就能把压力测试需要的脚本写好。


什么是压力测试

顾名思义:压力测试,就是  被测试的系统,在一定的访问压力下,看程序运行是否稳定/服务器运行是否稳定(资源占用情况)

比如: 2000个用户同时到一个购物网站购物,这些用户打开页面的速度是否会变慢,或者网站是否会奔溃


做压力测试的常用工具

做压力测试,一般要使用工具, 人工是没办法做的。   最常用的工具是LoadRunner, 但是LoadRunner毕竟是收费软件,而且使用上也比较复杂。 现在越来越多的人开始使用Jmeter来做压力测试。 免费, 而且使用上非常简单。


做压力测试的步骤如下:

1. 写脚本 或者录制脚本

2. 使用用户自定义参数

3. 场景设计

4. 使用控制器,来控制 模拟多少用户。

5. 使用监听器, 查看测试结果


本文做压力测试的例子

本文举的实例是: 在一台电脑用Jmeter模拟200个用户,同时去使用bing搜索不同的关键字, 查看页面返回的时间是否在正常范围内。



第一步: 使用CSV Data Set Config 来参数化

首先我们把测试需要用到的2个参数放在txt文件中,

新建一个data.txt文件,输入些数据, 一行有两个数据,用逗号分隔。

[attach]123568[/attach]

启动Jmeter, 先添加一个Thread Group, 然后添加一个CSV Data Set Config (Add -> Config Element -> CSV Data Set Config)

[attach]123569[/attach]


第二步:添加HTTP Request.

我们添加http 请求

选择Thread Group 右键 (Add ->Sampler -> HTTP Request),  需要填的数据如下:

[attach]123570[/attach]


第三步: 使用Thread Group, 控制模拟多少用户

选中Thread Group

[attach]123571[/attach]

Number of Threads(users):     一个用户占一个线程,  200个线程就是模拟200个用户

Ramp-Up Period(in seconds):   设置线程需要多长时间全部启动。如果线程数为200 ,准备时长为10 ,那么需要1秒钟启动20个线程。也就是每秒钟启动20个线程。

Loop Count: 每个线程发送请求的次数。如果线程数为200 ,循环次数为10 ,那么每个线程发送10次请求。总请求数为200*10=2000 。如果勾选了“永远”,那么所有线程会一直发送请求,直到选择停止运行脚本。


第四步:  添加Summary Report 用来查看测试结果

选中Thread Group 右键(Add -> Listener -> Summary Report)


第五步: 运行一下

到目前为止, 脚本就全写好了, 我们来运行下, 如何看下测试的结果

[attach]123572[/attach]



作者: langcn521    时间: 2019-4-10 10:07
非常感谢!能否讲解一下测试结果如果出现错误怎么看
作者: qqq911    时间: 2019-4-12 10:40
在监听器里看
作者: 算命师    时间: 2019-7-24 13:42
测试的用户数据只能一定要20个进行测试吗?能不能一个账号进行2000次的登录
作者: 算命师    时间: 2019-7-25 09:35
小哥,还在吗?我想问你怎么判断是get还是post
作者: 1257366216    时间: 2019-7-27 17:44
算命师 发表于 2019-7-25 09:35
小哥,还在吗?我想问你怎么判断是get还是post

接口文档一般会写是get还是post
作者: szc123qq    时间: 2020-4-21 10:56

作者: Miss_love    时间: 2020-12-25 14:52
看看




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2