Jmeter的目录结构
/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用户手册
Jmeter相关插件安装:
插件安装:
Jmeter的插件安装很简单,只需要下载对应插件解压即可。
下载地址:http://jmeter-plugins.org/downloads/all/
下载后解压放入:apache-jmeter-2.12\lib\ext\目录下
重启jmeter
ps:数据库链接驱动如果需要需要专门下载,例如mysql需要jdbc的jar包,地址:http://dev.mysql.com/downloads/file/?id=462850
使用注意事项:添加第三方插件并使用后保存的jmx文件在未添加该插件的运行环境下会导致无法打开该文件并报错,请保持环境一致性。
用例生成与导出:
Jmeter的用例格式为jmx文件,实际为xml格式,感兴趣可以学习下自己定制生成想要的jmx文件。
生成原则:
每个功能模块为一个独立的jmx文件。增加可维护性。(尽量不要将一个jmx文件放入太多功能,后期维护成本会很高。)
模块的私有变量保存在模块中,多模块共有的(例如服务器ip端口等)可以考虑存在单独的文件中读取。
接口测试不要放太多线程,毕竟不是做压力测试,意义也不大。
导出方法:
编写测试用例
文件——保存为——确定:
Jmeter常用文件类型
Jmx文件
文件的实际类型:xml
Jtl文件
文件的实际类型:自定义
定义方法:
修改{jmeterhome}/bin/jmeter.profile,可选择格式:csv,xml,db
# legitimate values: xml, csv, db. Only xml and csv are currently supported.
#jmeter.save.saveservice.output_format=csv
Jmeter运行模式及参数
GUI模式
打开已有的jmx文件(文件——打开)
点击启动按钮运行
由于GUI模式本身就是带界面的,也有中文版,就不在此详细介绍了。
命令行模式
依赖:
配置jmeter环境变量(windows下为将${jmeterhome}/bin加入Path变量)
如果未加入环境变量,在执行的时候可以直接给出全路径或在${jmeterhome}/bin下执行
命令:
jmeter -n -t -l
参数:
-h 帮助 -> 打印出有用的信息并退出
-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
-t 测试文件 -> 要运行的 JMeter 测试脚本文件
-l jtl文件 -> 记录结果的文件
-r 远程执行 -> 启动远程服务
-H 代理主机 -> 设置 JMeter 使用的代理主机
-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号
-j 日志文件->设置JMeter日志文件的名称
实例:
JMeter -n -t my_test.jmx -l log.jtl -H my.proxy.server -P 8000
执行步骤:
JMeter 默认去当前目录寻找脚本文件,并把日志记录在当前目录。比如你在 C:\tools\apache-jmeter-2.11\bin 目录下执行以上命令,JMeter 会去该目录下寻找 test.jmx 脚本并把执行结果放在该目录。如果你的脚本在其他目录,而且想要把执行结果放在另外文件夹,可以使用绝对路径告诉 JMeter。
执行过程查看:
D:\apache-jmeter-3.0\bin>jmeter -n -t D:\共享\bpintocpin.jmx -l D:\共享\test.jtl
Writing log file to: D:\apache-jmeter-3.0\bin\jmeter.log
Creating summariser
Created the tree successfully using D:\共享\bpintocpin.jmx
Starting the test @ Fri Jun 17 15:12:21 CST 2016 (1466147541295)
Waiting for possible Shutdown/StopTestNow/Heapdump message on port 4445
summary = 1 in 00:00:01 = 0.8/s Avg: 1178 Min: 1178 Max: 1178 Err: 0 (0.00%)
Tidying up ... @ Fri Jun 17 15:12:22 CST 2016 (1466147542649)
... end of run
执行结果查看:
GUI界面打开聚合报告
在GUI界面创建一个聚合报告
聚合报告界面点击浏览,选中生成的.jtl文件,打开
执行过程中查看
summary = 1 in 00:00:01 = 0.8/s Avg: 1178 Min: 1178 Max: 1178 Err: 0 (0.00%)
jtl文件转化成html格式查看
通过xslt工具转化成html格式(保存格式必须为xml格式)