1、Jmeter:概述
1.1 是什么?
Jmeter是Apache公司使用Java 开发的一款测试工具
1.2 为什么?
高效、功能强大
模拟一些高并发或多次循环等特殊场景
1.3 怎么用?
下载安装
- 1、下载jmeter,解压缩
- 2、安装Java环境(jmete 和 Java 环境的关系,类似于MP3文件和播放器关系)
注意:安装路径不能有中文字符、空格
安装JDK+JRE
点击下图的文件,代表文件安装成功
- 3、简单了解Jmeter 的目录结构
bin:存储了Jmeter的可执行程序,比如启动程序
lib : 存储了Jmeter整合的功能(一些.jar文件的小程序)
- 4、启动Jmeter
启动方式1:bin/ApacheJMeter.jar双击
启动方式2:存储了Jmeter整合的功能(一些.jar文件的小程序)
jmeter.sh linux下的启动程序
- 5、编写一个Jmeter版本的测试案例
1.4 Jmeter 的作用优点以及缺点(了解)
作用:
- 接口测试
- 性能测试:内在 ———- 测程序的算法,程序的效率响应时间
- 压力测试:外在 ———- 并发用户数,最多用户数导致程序崩溃,外在负载
- Web自动化测试
- 数据库测试:测试数据库,通过程序实现连接数据库
- JAVA程序测试
优点
- 开源、免费
- 支持多协议:http https ftp ftps ….
- 小巧
- 功能强大
缺点
- 不支持IP欺骗
- 不支持前端测试
2、Jmeter组件:线程组
Jmeter:内置许多小功能()
2.1 是什么?
进程:一个正在执行的程序就对应一个线程,一个进程里面可以同时执行多个线程(比如百度网盘上传多张图片的同时也可以看网盘的内容,如视频)
- 线程:进程中的执行线索(一个进程有多个执行线索)
- 线程组:按照线程性质对线程进行分组,为了方便管理线程(如班级分组)
- 并发执行:多个线程同时执行,如同时下载3部电影;特点:执行结束的顺序和线程启动的顺序不一定一致,如同时下载3部电影,先下载的不一定先下载完成,后下载的不一定后下载完成
- 顺序执行:按照线程的启动顺序挨个执行,如播放音乐顺序播放
2.2 为什么?
方便管理
2.3 怎么用?(基本使用)
2.3.服务器托管网1三者关系
三者关系:进程有多个线程组,线程组可以有多个线程
- 进程 —- 测试计划
- 线程组 —- 线程组
- 线程 — 线程组属性的线程数
例子:
组01有2个,组02有3个,一共返回5个
2.3.2 线程组的默认情况下
默认情况下,线程组中的线程是并发执行的
每一个线程组都要执行组内的http请求
2.3.3 怎么设置线程组顺序执行?
A、勾选测试计划的第一个复选框(独立运行每个线程组)
2.3.4 介绍取样器
线程组练习–增删改查
1、将上图的建立的线程先禁用
2、建立新线程
3、增加报文体数据和信息头
增加信息头,
记:Jmeter里万物皆组件
4、执行5、增加删除操作
2.4 练习:学生管理系统增删改查实现以及优化
把共同属性(可复用并发)抽取出去,利用控件方式进行复用:可以使用http请求默认值抽取共同的ip端口号 |协议 | 编码集 | 等信息
测试计划 — >右击 — >添加 —>配置文件 —> http请求默认值
作用:通过复用属性简化实现,提高测试效率
1、建立http请求默认值
HTTP请求字段内容为空,使用默认值
2.5 线程组高级(初始化与销毁线程组)
实现了些内置功能
2.5.1线程组属性
- 属性1: 线程数 — 模拟用户数
- 属性2: 时间值 — 在指定时间内启动所有线程
- 属性3:循环数 — 单个用户访问的次数
如下图:
不一定几秒就在几秒内,和本身的性能有关
2.5.2 调度器 * 循环测试
- 循环次数设置为永远
- 设置启动延迟x 和持续时间y
在x秒后访问数据,并持续y秒
- 设置启动时间M和结束时间N(在版本5.6.2版本不存在了)
在M时开始访问服务器托管网,在N时结束
注意事项:2和3实现不能同时使用,否则矛盾了
图片:
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net