第1章 Jmeter 简介
1.1 Jmeter的基本概念
Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言
1.2 我们为什么使用Jmeter
开源免费,基于Java编写,可集成到其他系统可拓展各个功能插件
支持接口测试,压力测试等多种功能,支持录制回放,入门简单
相较于自己编写框架活其他开源工具,有较为完善的UI界面,便于接口调试
多平台支持,可在Linux,Windows,Mac上运行
第2章 Jmeter安装配置
2.1 Windows下Jmeter下载安装
登录 http://jmeter.apache.org/download_jmeter.cgi ,根据自己平台,下载对应文件
备注:一版下载Binaries版本 source含有源码
2.2 安装JDK,配置环境变量(具体步骤不做介绍)
网址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
根据自己电脑系统选择下载,安装。
2.3 将下载Jmeter文件解压,打开/bin/jmeter.bat
#备注有些童鞋说没有看到.bat,需要在在控制面本-文件夹选项—
2.4 jmeter 界面
2.5 jmeter 目录结构
2.5.1 /bin 目录(常用文件介绍)
examples:目录下包含Jmeter使用实例
ApacheJMeter.jar:JMeter源码包
jmeter.bat:windows下启动文件
jmeter.sh:Linux下启动文件
jmeter.log:Jmeter运行日志文件
jmeter.properties:Jmeter配置文件
jmeter-server.bat:windows下启动负载生成器服务文件
jmeter-server:Linux下启动负载生成器文件
/docs目录——Jmeter帮助文档
/extras目录——提供了对Ant的支持文件,可也用于持续集成
/lib目录——存放Jmeter依赖的jar包,同时安装插件也放于此目录
/licenses目录——软件许可文件,不用管
/printable_docs目录——Jmeter用户手册
第3章 性能测试环境具体流程
第4章 jmeter 压力测试(入门)
4.1 打开jmeter
4.2 创建线程组
点击测试计划->Threads(Users)->线程组
4.3 线程组参数讲解
备注: 在名称可以修改自己定义的项目名称。
在线程属性中,在1秒内启动300个线程,循环2次。总次数(Ramp-Up时间)=线程数*循环次数
添加HTTP请求,为录制http连接使用
右键“线程组”,选择“添加”—〉 “Sampler”—〉“HTTP请求”
http请求中添加
4.4 启动jmeter
点击开始后第一次要求选择Y 和 配置保存位置,这块自己而定
设置完成后可以查看聚合报告和查看结果数
当再次选择测试时,需要清除刚才数据可以选择 清理全部
注意如果测试中有中文需要看
右击线程组->前置处理器->Bean Shell PreProcessor
里面填写将字符集为 utf-8:
prev.setDataEncoding(“UTF-8”);
第5章 建议、总结、注意事项
5.1.1 建议:
jmeter 个人因为是运维,对这块也只是简单会用,建议。
1、压力测试中建议大家使用测试工具: Jmeter-3.2 模拟并发 。
2、使用Badboy-2.2.5 录制用户访问网站,或者将Fiddler 抓包的数据用Badboy 录制,测试数据一多,Badboy录制很有用。
3、Linux 中工具top查看性能 结合zabbix 监控(或其它监控软件),查看服务器性能瓶颈。
5.1.2 总结:
压力测试完,怎么判断和分析,非专业,只是个人见解。
1、压力测试并发递增分别测试10、20、30……100个线程,即模拟这些数目的用户并发;每个用户循环发送请求1;Ramp-up period(inseconds)的值设为10秒、60秒,180秒 即并发请求,多方位得到数据、分析。
2、在聚合报告中查看 error 有没有增加。
3、查看图形结果中 吞吐量是否随着并发下降。
4、自身体验(很重要)在并发下可以自己和多人访问网站和APP 感受如何。
5.1.3 注意事项:
1、测试一定要提前准备、并避免用户访问时间。
2、和运维、领导、开发确定测试时间并提供支持,万一并发一大,服务宕机等。
3、测试jmeter 并发测试中对自身电脑网络带宽要求高,比如生产环境50 兆专线,办公区只有30兆,那么你测试生产最高30兆流量,办公区带宽出口是一个问题。