Jmeter是个纯java的开源的轻量级性能测试工具,功能强大。因为是轻量级的,与loadrunner相比,报告统计的相对较少。不过有jmeter的插件-JMeterPlugins,可以提供不少其他的报告,包括各种响应时间、吞吐率、线程等的变化曲线等
并且这个插件提供了命令行工具,可以将我们看到的各种曲线,各种报告统计成png图片,或者csv文件。这样我们就完全可以通过命令行来运行jmeter,生成jtl文件,然后在解析jtl文件,产生各种报告,或者展示到网页,或者插入到数据库,等等。
英文地址:http://jmeter-plugins.org/wiki/JMeterPluginsCMD/
安装
下载JMeterPlugins-Standard-1.2.0.zip和JMeterPlugins-Extras-1.2.0.zip,解压将里面的jar包复制到jmeter的lib/ext文件夹中即可。
用法
生成png图片:
java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ThreadsStateOverTime.png
--input-jtl 1.jtl --plugin-type ThreadsStateOverTime
生成csv图片:
java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ThreadsStateOverTime.csv --input-jtl 1.jtl --plugin-type ThreadsStateOverTime
当然也可以一次性生成两个文件。下面是改命令的参数:
- –generate-png 指定png图片文件
- –generate-csv 指定csv文件名
- –input-jtl 指定要解析的jtl文件
- –plugin-type 指定要输出的数据类型,比如响应时间、cpu使用率、错误率等
Plugin Type Classes
插件提供解析下面这些数据的对象:
- AggregateReport = JMeter’s native Aggregate Report, can be saved only as CSV 聚合报告
- SynthesisReport = mix between JMeter’s native Summary Report and Aggregate Report, can be saved only as CSV
- ThreadsStateOverTime = Active Threads Over Time 线程数随时间的变化曲线
- BytesThroughputOverTime 流量随时间的变化曲线
- HitsPerSecond 点击率随时间的变化曲线
- LatenciesOverTime 延迟随时间的变化曲线
- PerfMon = PerfMon Metrics Collector 服务器参数随时间变化曲线注意这个需要在jmx脚本中添加,服务器监控,要指定ip、端口、监控项,还需要指定perfMon的输出文件,或者在命令行指定,如
sh jmeter.sh -n -t HTTP请求-baidu.jmx -l 2.jtp -JforcePerfmonFile=true
,这样会输出在当前路径。 - ResponseCodesPerSecond 响应码随时间变化曲线
- ResponseTimesDistribution 响应时间分布
- ResponseTimesOverTime 响应时间随时间变化曲线
- ResponseTimesPercentiles 响应时间的百分比
- ThroughputVsThreads 吞吐率随线程变化曲线
- TimesVsThreads = Response Times VS Threads 响应时间随线程变化曲线
- TransactionsPerSecond 事务随时间变化曲线
- PageDataExtractorOverTime
- MergeResults
#!/bin/sh file=$1 perfmonPath=$2 CMDRunnerPath=/Users/apple/work/jmeter-2.11/lib/ext #generate png java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_ThreadsStateOverTime.png --input-jtl $file --plugin-type ThreadsStateOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_BytesThroughputOverTime.png --input-jtl $file --plugin-type BytesThroughputOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_HitsPerSecond.png --input-jtl $file --plugin-type HitsPerSecond java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_LatenciesOverTime.png --input-jtl $file --plugin-type LatenciesOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_ResponseCodesPerSecond.png --input-jtl $file --plugin-type ResponseCodesPerSecond java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_ResponseTimesDistribution.png --input-jtl $file --plugin-type ResponseTimesDistribution java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_ResponseTimesOverTime.png --input-jtl $file --plugin-type ResponseTimesOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_ResponseTimesPercentiles.png --input-jtl $file --plugin-type ResponseTimesPercentiles java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_ThroughputVsThreads.png --input-jtl $file --plugin-type ThroughputVsThreads java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_TimesVsThreads.png --input-jtl $file --plugin-type TimesVsThreads java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_TransactionsPerSecond.png --input-jtl $file --plugin-type TransactionsPerSecond java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_PageDataExtractorOverTime.png --input-jtl $file --plugin-type PageDataExtractorOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-png ${file%.*}_PerfMon.png --input-jtl $2 --plugin-type PerfMon #generate csv java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_AggregateReport.csv --input-jtl $file --plugin-type AggregateReport java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_ThreadsStateOverTime.csv --input-jtl $file --plugin-type ThreadsStateOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_BytesThroughputOverTime.csv --input-jtl $file --plugin-type BytesThroughputOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_HitsPerSecond.csv --input-jtl $file --plugin-type HitsPerSecond java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_LatenciesOverTime.csv --input-jtl $file --plugin-type LatenciesOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_ResponseCodesPerSecond.csv --input-jtl $file --plugin-type ResponseCodesPerSecond java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_ResponseTimesDistribution.csv --input-jtl $file --plugin-type ResponseTimesDistribution java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_ResponseTimesOverTime.csv --input-jtl $file --plugin-type ResponseTimesOverTime java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_ResponseTimesPercentiles.csv --input-jtl $file --plugin-type ResponseTimesPercentiles java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_ThroughputVsThreads.csv --input-jtl $file --plugin-type ThroughputVsThreads java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_TimesVsThreads.csv --input-jtl $file --plugin-type TimesVsThreads java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_TransactionsPerSecond.csv --input-jtl $file --plugin-type TransactionsPerSecond java -jar $CMDRunnerPath/CMDRunner.jar --tool Reporter --generate-csv ${file%.*}_PageDataExtractorOverTime.csv --input-jtl $file --plugin-type PageDataExtractorOverTime
相关推荐
Gdal 命令行工具(DEM及图像栅格文件处理工具) Gdal_translate 可以将多种不同类型的栅格文件(DEM或图片JPG,JP2,PNG,TIF)进行格式转换如INT16 转float32 Gdal_translate /H可以查询使用的参数 其它的一些Gdal工具...
将 BLP 图像文件转换为 PNG 或 TGA 格式的命令行工具。BLP 暴雪游戏使用图像。 支持以下 BLP 格式: * BLP1: - JPEG - 未压缩无 Alpha 通道 - 使用 Alpha 通道(8 位)未压缩 * BLP2: - 未压缩无 Alpha ...
二维码在命令行上生成 png 二维码如何从 .jar 制作命令行可执行文件这将帮助您创建可执行文件,而无需一直输入java -jar 。 > (echo '#!/usr/bin/java -jar'; cat out/artifacts/QRCode_jar/QRCode.jar) > qrcode...
在JavaScript编程领域,生成PNG图片是一项常见的需求,特别是在数据分析、可视化和动态图表的制作中。JavaScript库如HTML5的Canvas API或第三方库如jsCharts都提供了这样的功能。本篇文章将详细探讨如何使用...
综上所述,"base64的XML或XML生成png图片.rar"项目涉及了Java编程语言中的XML解析、Base64编码与解码、图像处理等多个技术领域。通过理解和掌握这些技术,开发者可以创建出更安全、更灵活的数据转换解决方案。
标题中的“任意图片转8位(256色)png图片工具”指的是一个软件或程序,它能够将各种格式的图像文件转换成8位色彩深度的PNG图片。8位PNG图片意味着每个像素由8个二进制位表示,总共可以表示256种颜色,这种格式常用于...
PDF转图片命令行工具,可通过C#中Process调用或者命令行调用。命令行调用:pdf2png.exe D:\1.pdf D:\ 300 1。第一参数为全路径PDF,第二参数为图片存储文件夹路径,第三参数为照片品质值,第四参数为转换页数(0则全...
总结来说,大张PNG图片的分割和图集、plist文件的生成是游戏和应用资源优化的关键步骤。通过这个过程,开发者能够有效地管理大量图形资源,提升应用性能,同时降低内存占用。使用专门的工具,如“png转plist工具”,...
在Qt框架中,生成并保存png、jpg和bmp格式的图片是常见的需求,尤其是在进行图形用户界面(GUI)开发时。QImage和QPainter是Qt提供的两个关键类,用于图像处理和绘制。以下是对这两个类及其在生成不同格式图片中的...
使用 TinyPNG API 缩小 PNG 图像的便捷命令行工具 法 TinyPNG CLI 允许您以两种不同的方式提供您的 API 密钥。更方便的方法是将 API 密钥保存到.tinypng您的主目录中调用的文件中。另一种方法是在运行 CLI 时将其...
4. 开始处理,工具会执行压缩和加密操作,并生成新的加密PNG文件。 5. 保存加密后的文件,确保备份解密密钥以备后续使用。 总的来说,PNG图片压缩加密工具是一种实用的软件,它结合了图片压缩和加密技术,为那些...
这种工具可能允许用户直接拖放PNG文件,然后通过内部算法快速读取或"爆破"出图片的实际尺寸,尤其是当图片被恶意篡改或者加密时。 爆破PNG图片宽高可能涉及到以下技术点: 1. PNG文件结构:了解PNG文件的结构至关...
Steghide是一款命令行工具,可隐藏数据于JPEG、BMP、WAV和AU文件中,虽然不直接支持PNG,但可以通过一些转换手段来使用。而OpenStego则专门支持PNG文件的隐写术操作,它是一款开源工具,用户可以在其官方网站上免费...
在这个项目中,我们讨论的是一个基于TinyPNG库封装的工具,该工具能够集成到Node.js的命令行和webpack打包流程中,用于高效地压缩图片,降低文件大小,从而优化网站或应用的加载速度。 TinyPNG是一款优秀的在线图片...
这通常由专用工具完成,例如"PNG2C",它可以读取PNG文件并生成C源代码,该代码包含一个或多个数组,每个数组代表图片的一行像素。 3. **生成的C文件结构**:生成的C文件通常包含一个头文件,定义了数组的结构和大小...
该项目是关于利用深度学习技术对医学图片中的表格数据进行识别并导出为CSV文件的解决方案。核心工具是百度开发的PaddleOCR,一个强大的OCR(Optical Character Recognition,光学字符识别)框架,专为中文字符识别...
此工具可以加密和解密PNG图片,保护您的隐私。 ## 加密 1. 选择要加密的PNG图片。 2. 输入密码并确认。 3. 点击“加密”按钮。 4. 保存加密后的PNG图片。 ## 解密 1. 选择要解密的PNG图片。 2. 输入密码并确认。...
饥荒Mod 开发一键打包工具,这是一个...工具包中包含一个 Textool ,可以用来反解 纹理,将纹理转成png图片。Spriter 动画制作打包工具。可以为物品制作各种帧动画压缩包中有一个使用文档,以及一个图片。两个命令行
标签中的“Colorquantizer”是原始的图形界面工具,而“图片压缩命令行工具”和“命令行图片压缩工具”明确了TruePNG的核心功能,即在命令行环境下对图像进行压缩。此外,“cq命令行工具”可能是指使用“cq”作为...
这个工具的主要目的是为了减少PNG(Portable Network Graphics)图像文件的大小,从而节省存储空间和提高网页加载速度,尤其适合那些对文件体积敏感的项目。PNGNQ是基于NQuant算法的一个实现,它通过牺牲一些颜色...