当把JMeter使用命令行运行后,JMeter会把结果保存到一个指定文件中(使用-l参数指定)。这个文件记录了每条Query的响应时间、状态等,如: <!--?xml version=""1.0"" encoding=""UTF-8"?"--><!--?xml--> <testresultsversion="1.2"></testresultsversion="1.2"> <httpsamplet="232"lt="232"ts="1305880045755"s="true"lb="http rc=""200"rm="OK"tn="CardEye" dt=""text"by="2508"/"></httpsamplet="232"lt="232"ts="1305880045755"s="true"lb="http> 这其中: t是该Query的响应时间 ts是该Query的发送时间,以毫秒为单位 rc是返回码 我这个JTLParser就是来解析这个文件,然后返回一些常用的性能结果指标,返回的性能指标有: QPS:平均一秒内处理的Query数 Latency: 平均响应时间 最大响应时间 Query Success Number:返回码是200的Query数 Query Failed Number:返回码不是200的Query数 下载地址 svn checkout http://xtoolkit.googlecode.com/svn/tags/JTLParser-0.1 JTLParser Usage java -jar JTLParser.jar --jtlFile JTLFile :需要解析的JTL文件 --percentFields PercentFields :需要展示的不同百分比下的Query响应时间,使用逗号分割 --responseTimeFields ResponseTimeField:需要展示的不同响应时间段的Query数,使用逗号分割 默认使用 默认只要使用--jtlFile接一个JTL文件就可以,可以得到类似如下的结果: FROM: 05/20/1104:27:25 END: 05/20/1104:37:25 SendedQueryNumber: 11721 TotalSpendedTime(s): 599.72 QPS: 19.54 Latency(ms): 43 MaxResponseTime(ms): 403 QuerySuccessNumber: 11721 QueryFailedNumber: 0 展示不同百分比下的Query平均响应时间 运行类似:java -jar JTLParser.jar --jtlFile YourJTLFile --percentFields 40,70,80,90就可以得到如下结果: 40Percentile(ms): 17 70Percentile(ms): 30 80Percentile(ms): 35 90Percentile(ms): 39 展示的不同响应时间段的Query数 运行类似:java -jar JTLParser.jar --jtlFile YourJTLFile --responseTimeFields 30,40,50就可以得到类似如下结果: Latency>=30(ms): 7665 65.40% Latency>=40(ms): 6288 53.65% Latency>=50(ms): 4951 42.24%