Jmeter概述
是Apache公司使用Java开发的一款高效且功能强大的测试工具
作用:
- 接口测试
- 性能测试:测试内在,即程序的算法,程序响应时间,执行效率
- 压力测试:外在负载
- web自动化测试
- 数据库测试
- Java程序测试
优点:
开源、免费
支持多协议:http https ftp ftps…
小巧
功能强大
缺点:
不支持ip欺骗
不支持
安装过程:
1、下载Jmeter
2、安装jdk环境
3、Jmeter目录结构
bin目录:可执行程序
lib目录:聚集了一些小功能
4、启动Jmeter
方式1:ApacheJmeter.jar
方式2、Jmeter.bat
使用:
1、右击测试计划–保存—添加线程组—添加HTTP请求—添加监听器—添加察看结果树
线程组
进程和线程
进程:一个正在运行的程序
线程:程序中的执行线索
线程组:不同性质的线程分类
并发执行:多个线程同时执行,特点:结束顺序和启动顺序不一定一致
顺序执行:按照启动顺序执行,特点:先启动执行完,后启动后执行完
测试计划-----进程
线程组-----线程组
线程组属性线程数 -----线程(模拟用户数)
线程数为N,模拟N个用户,循环次数为M,每个用户循环执行M次
Ramp up Period时间:在规定时间内启动所有线程
调度器(计时器)
隔某个时间间隔执行某种操作
测试计划—添加----配置元件—HTTP请求默认值:作用是通过复用属性简化实现,提高测试效率。
Jmeter组件:参数化
参数化就是动态的获取并设置数据
比如执行批量操作时,批量插入或批量删除,之前数据都是手写的,每执行都需要修改一次,效率太低。参数化就是可以以程序代替人工获取并设置数据:安全+高效
Jmeter组件:参数化实现之CSV Data Set Config
CSV:逗号分隔值文件格式
CSV Data Set Config:CSV数据配置
案例1:
Jmeter执行批量添加操作:
通过URL定位添加接口,提交的json格式数据,数据格式固定,值可变,查看响应
CSV Data SetConfig
创建一个文本文档,存储要添加的3条记录
总结:
1、编写添加框架,设置循环次数为3,json数据格式固定,值先不写
2、编写一个外部的文本文档,存储要添加的三条数据,标准的CSV格式文件,每一行数据对应数据库一条记录,不同字段之间使用英文,分隔
3、Jmeter添加一个参数化组件,CSV Data Set Config,每次循环时都读取外部文档的一行数据,再将4个字段分别设置进提交的json数据中:创建一个CSV组件,声明数据源以及编码集以及解析格式:文件路径、编码集、对应每一行的四个字段“,"分隔符
4、将CSV解析的数据设置进json格式的请求报文中,语法${变量名}
Jmeter组件:线程组实现高级
SetUP 线程组:最先执行的线程组,可以加载程序主体执行所需的资源
TearDown线程组:最后执行的线程组,可以在程序正式关闭之前可以将数据保存在内存中。