JMeterPluginsCMD Command Line Tool
There is small command-line utility for generating graphs out of JTL files. It behave just like right-click context menu on all graphs. The tool can generate PNG, CSV or both. Note you can use GraphsGeneratorListener if you want to bulk generate graphs after a test or for existing results.
Installation
The tool is placed inside distribution ZIP. The tool consists of CMDRunner.jar and shell wrappers. Wrappers just shorten call of"java -jar CMDRunner.jar --tool Reporter ...". The tool files must be placed inside lib/ext directory of JMeter installation. The tool requires JMeterPlugins.jar to be placed in lib/ext also. The tool requires JMeter 2.4 to function properly (2.3 will work only for PNG generation).
Usage and Parameters
Generating PNG:
java -jar CMDRunner.jar --tool Reporter --generate-png test.png --input-jtl results.jtl \
--plugin-type ResponseTimesOverTime --width 800 --height 600
Generating CSV:
java -jar CMDRunner.jar --tool Reporter --generate-csv test.csv \
--input-jtl results.jtl --plugin-type ResponseTimesOverTime
Yoy may generate CSV and PNG in single tool run. --help will show you short help list on available parameters.
| --generate-png <file> | generate PNG file containing graph | |
| --generate-csv <file> | generate CSV file containing graph data | |
| --input-jtl <file> | load data from specified JTL file | |
| --plugin-type <class> | which type of graph use for results generation |
Use --input-jtl merge-results.properties with --plugin-type MergeResults. The merge-results.properties file is in JMETER_HOME/bin dir.
You may customize graph drawing and data processing like GUI settings do with optional parameters:
| --width <pixels> | for PNG only - width of the image, default is 800 | |
| --height <pixels> | for PNG only - height of the image, default is 600 | |
| --granulation <ms> | granulation time for samples | |
| --relative-times <yes/no> | use relative X axis times, no will set absolute times | |
| --aggregate-rows <yes/no> | aggregate all rows into one | |
| --paint-gradient <yes/no> | paint gradient background | |
| --paint-zeroing <yes/no> | paint zeroing lines | |
| --paint-markers <yes/no> | paint markers on data points (since 1.1.3) | |
| --prevent-outliers <yes/no> | prevent outliers on distribution graph | |
| --limit-rows <num of points> | limit number of points in row | |
| --force-y <limit> | force Y axis limit | |
| --hide-low-counts <limit> | hide points with sample count below limit | |
| --success-filter <true/false> | filter samples by success flag (since 0.5.6), possible values are true, false, if not set no filtering on success flag will occur | |
| --include-labels <labels list> | include in report only samples with specified labels, comma-separated | |
| --exclude-labels <labels list> | exclude from report samples with specified labels, comma-separated | |
| --auto-scale <yes/no> | enable/disable auto-scale multipliers for perfmon/composite graph | |
| --line-weight <num of pixels> | line thickness for graph rows | |
| --extractor-regexps <regExps list> | list of keyRegExp and valRegExp pairs separated with {;}, only used by PageDataExtractorOverTime | |
| --include-label-regex <true/false> | include samples using regular expression | |
| --exclude-label-regex <true/false> | exclude samples using regular expression | |
| --start-offset <sec> | include in report only samples with (timestamp - relativeStartTime) > startOffset | |
| --end-offset <sec> | include in report only samples with (timestamp - relativeStartTime) < endOffset |
Plugin Type Classes
Make note that you need to install corresponding plugins set to have Extras plugins available in CMD.
Most of class names are self-explanatory:
- 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
- DbMon = DbMon Metrics Collector, DataBase, get performance counters via sql
- JMXMon = JMXMon Metrics Collector, Java Management Extensions counters
- ResponseCodesPerSecond
- ResponseTimesDistribution
- ResponseTimesOverTime
- ResponseTimesPercentiles
- ThroughputVsThreads
- TimesVsThreads = Response Times VS Threads
- TransactionsPerSecond
- PageDataExtractorOverTime
- MergeResults = MergeResults Command Line Merge Tool to simplify the comparison of two or more load tests, need properties file (like merge-results.properties)
Other Ways to Automate Reporting
You can use BM.Sense service to automate test results storage and reporting. See also: BM.Sense Uploader plugin.
JMeterPluginsCMD Command Line Tool的更多相关文章
- How to Use Android ADB Command Line Tool
Android Debug Bridge (adb) is a tool that lets you manage the state of an emulator instance or Andro ...
- Cordova 3.0 Plugin 安装 及"git" command line tool is not installed
根据http://docs.phonegap.com/en/edge/guide_cli_index.md.html#The%20Command-line%20Interface Windows命令行 ...
- Cookies with curl the command line tool
w https://curl.haxx.se/docs/http-cookies.html curl has a full cookie "engine" built in. If ...
- xcode10对应的xcode command line tool编译的坑
众所周知,xcode10新增的编译系统new build system会不支持一些老项目的编译,一般的做法是在Xcode编译配置Xcode->File->Project Settings/ ...
- NSRunLoop 在mac command line tool上的部分运用
首先RunLoop相关博客参考这篇https://blog.csdn.net/lengshengren/article/details/12905627. 最近开发了一个mac上的命令行工具,我在主线 ...
- cURL POST command line on WINDOWS RESTful service
26down votefavorite 7 My problem: Running windows 7 and using the executable command line tool to cu ...
- Building Xcode iOS projects and creating *.ipa file from the command line
For our development process of iOS applications, we are using Jenkins set up on the Mac Mini Server, ...
- An annotation based command line parser
Java命令行选项解析之Commons-CLI & Args4J & JCommander http://rensanning.iteye.com/blog/2161201 JComm ...
- 怎样安装Command Line Tools in OS x Mavericks&Yosemite(Without xcode)--转载
How to Install Command Line Tools in OS X Mavericks & Yosemite (Without Xcode) Mac users who pre ...
随机推荐
- php实现获取汉字的首字母
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- 用css控制字数,多余的用省略号代替
选择器 { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 100px; } white-space 属性 ...
- PHP:win7 ASP.NET环境与PHP(WAMP)环境如何共存
经验地址:http://jingyan.baidu.com/article/495ba8410f794d38b30ede89.html 笔记本以前安装过asp.net,启用了Windows的IIS服务 ...
- POJ 2388
还是水题,简单的排序.大半夜的,没脑子想太复杂的代码了,就随手找了段以前写的插入排序将就着用了. 题目的意思就是取一个数列的中位数,很简单,排序后取a[n/2]即可. 代码如下: #ifndef _2 ...
- sqlserver isnull判断
--在新增或编辑的时候设置默认值或加isnull判断 Sql isnull函数 ISNULL(columName, 0)<>35 或 ISNULL(columName, '')<&g ...
- .NET Core 2.0 Preview2 发布汇总
前言 关于 ASP.NET Core 2.0 的新功能可以查看我的这篇博客. 这篇文章是 Priview2中的一些改进. .NET Core 2.0 - Preview2 Azure 的改进 Dock ...
- 关于cookie与session的理解
服务器端并不能捕获客户端的浏览器关闭事件,因此你关闭浏览器以后,服务器端那个Session还是存在的,要超时以后才被回收,启动一个新的浏览器会启动一个新的session,所以他不认你了session永 ...
- 4.Smarty模板之间调用
{include file="header.tpl" name="cai"}
- css 样式 设置图片成为圆形
<div style="float: left;border-radius:70%; height: 80px; overflow:hidden;"> <img ...
- Dagger2在Android开发中的应用
世界是普遍联系的,任何事物和个体都直接或间接相互依赖,在时空长河中共同发展.在面向对象的世界中,更是如此,类与类之间的依赖,关联关系,模块(亦或是分层架构中的层)之间的耦合关系,都是我们在软件开发实践 ...