Jmeter测试报告生成
Jmeter测试报告生成
本文使用的 Jmeter 版本为 apache-jmeter-3.2
1. 命令行模式将 jtl 文件转成测试图表 注意: 这种方式只适用于jmeter3.0以后的版本
1.1 在测试的过程中将 jtl 转换成测试报告 可以执行如下命令: jmeter -n -t test_request.jmx -l test_result.jtl -e -o /home/csmijo/resultReport 参数说明: -n : 非GUI 模式执行JMeter -t : 执行测试文件所在的位置及文件名 -r : 远程将所有agent启动用在分布式测试场景下,不是分布式测试只是单点就不需要-r -l : 指定生成测试结果的保存文件, jtl 文件格式 -e : 测试结束后,生成测试报告 -o : 指定测试报告的存放位置 ps:-o 指定的文件及文件夹,必须不存在,否则执行会失败,对应上面的命令就是 resultReport 文件夹必须不存在否则报错;如果存在,则文件夹必须为空; 报告文件如下图所示:
1.2 使用之前的测试结果,生成测试报告 如果在执行压测脚本的时候没有指定生成测试报告,在测试结束之后,也可以通过如下的命令生成: jmeter -g log.jtl -e -o resultReport 参数说明: -g : 指定已存在的测试结果文件 -e : 测试结果后,生成测试报告 -o : 指定测试报告的存放位置 ps:-o 指定的文件及文件夹,必须不存在 ,否则执行会失败 效果如上图
2. 插件模式将 jtl 转成测试图表
2.1 图表 plugin 的类型 1.AggregateReport=JMeter's native Aggregate Report,can be saved only as CSV 2.SynthesisReport=mix between JMeter's native Summary Report and Aggregate Report,can be saved only as CSV 3.ThreadsStateOverTime=Active Threads Over Time 4.BytesThroughputOverTime 5.HitsPerSecond 6.LatenciesOverTime 7.PerfMon=PerfMon Metrics Collector 8.DbMon=DbMon Metrics Collector,DataBase,get performance counters via sql 9.JMXMon=JMXMon Metrics Collector, Java Management Extensions counters 10.ResponseCodesPerSecond 11.ResponseTimesDistribution 12.ResponseTimesOverTime 13.ResponseTimesPercentiles 14.ThroughputVsThreads 15.TimesVsThreads=Response Times VS Threads 16.TransactionsPerSecond 17.PageDataExtractorOverTime 18.MergeResults=MergeResults Command Line Merge Tool to simplify the comparison of two or more load tests, need properties file (like merge-results.properties)
2.2 不同 plugin类型的生成方式
2.2.1 主要 plugin 类型 这里使用JMeterPluginCMD来生成对应的图片或者 csv 统计文件。 1.从官网下载:jpgc-cmd-2.1.zip: https://jmeter-plugins.org/wiki/JMeterPluginsCMD/ 2.解压文件,对应的文件分别放入jmeter安装目录的对应文件夹下,即解压后bin录下的文件都放入到jmeter安装目录的bin目录下,以此类推 3.为了使用 JMeterPluginCMD 生成结果图片或 csv 文件,还需要依赖一下的组件: i.jpgc-filterresults-2.1.zip https://jmeter-plugins.org/wiki/FilterResultsTool/ ii.jpgc-synthesis-2.1.zip https://jmeter-plugins.org/?search=jpgc-synthesis iii.GUI界面中的plugins manager中的jpgc-Standard set,其中共包含以下的文件: jpgc-dummy jpgc-fifo jpgc-graphs-basic jpgc-perfmon jpgc-tst jpgc-sense jpgc-functions jpgc-casutg jpgc-ffw 4.然后就可以使用JMeterPluginsCMD.bat/sh生成图片或CSV文件了。比如生成
性能测试结果图片或CSV文件的命令为: #生成图片 JMeterPluginsCMD.bat --generate-png cpu.png --input-jtl cpu.jtl --plugin-type PerfMon #生成CSV文件 JMeterPluginsCMD.bat --generate-csv cpu.csv --input-jtl cpu.jtl --plugin-type PerfMon 5.添加完上述的文件就可以生成如下plugin类型的图表 i.AggregateReport ii.SynthesisReport iii.ThreadsStateOverTime iv.PerfMon v.ResponseTimesOverTime vi.TransactionsPerSecond
2.2.2 其他类型的 plugin 如果要生成如下plugin类型的图表: 1.BytesThroughputOverTime 2.HitsPerSecond 3.LatenciesOverTime 4.ResponseCodesPerSecond 5.ResponseTimesDistribution 6.ResponseTimesPercentiles 7.ThroughputVsThreads 8.TimesVsThreads 就还需要添加如下的jar包到jmeter安装目录的lib\ext下: JMeterPlugins-Standard.jar https://jmeter-plugins.org/downloads/old/ JMeterPlugins-Extras.jar https://jmeter-plugins.org/downloads/old/
2.2.3 生成所有 plugin 类型的命令 添加好上面的依赖文件后,就可以使用如下的脚本批量生成图表了。
>>每天充电一小时,搞定Python全栈测试开发
更多精彩

