jmetertestreport的简单介绍
JMeter简单的接口压测实战
一、在JMeter界面进行测试
需要测试的接口: /api/firm/search
1、添加线程组 Thread Group
2、简单配置参数
3、添加http请求的默认值(为了方便)
配置基本信息,后面的http请求可以直接用,不用重复写了
4、添加http请求
5、为了查看结果,添加监听器
7、聚合报告中各字段说明
8、英文看着不习惯的朋友这么换成中文的
9、图形结果的话,如果线程数设置太小,就会看不出啥,把第二步中设置的并发数改成100你试试,就有曲线了。
二、命令行压测
1、将之前的 JMeter 中设置的整个测试计划存储为 jmx 格式。
2、开始开始
终端先进入你jmx文件存在的路径
输入: jmeter -n -t 你上一步存的那个名字.jmx -l 这是测试结果文件.jtl
参数说明:
4、也可以看web版的报告
终端输入: jmeter -g TestReport.jtl -o WebReport
参数说明:
5、成功后,你看你选择的存放路径 Desktop/test ,里面就有 index.html ,打开即可查看报告。
centos下怎么使用ant批量执行jmeter
一、环境准备:
1、Jdk1.6或以上:
命令行输入:java -version,出现如下提示说明安装成功
2、ANT下载:
命令行输入:ant -v,出现如下提示说明安装成功
3、Jmeter下载:
4、将 jmeter的extras目录中ant-jmeter-1.1.1.jar包拷贝至ant安装目录下的lib目录中
5、修改Jmeter的bin目录下jmeter.properties文件的配置:jmeter.save.saveservice.output_format=xml
二、Jmeter脚本:
1、如何编写脚本请参见:
2、脚本目录:D:\apache-jmeter-2.13\demo
3、脚本内容:
测试百度.jmxGoogle1.jmx
三、build.xml代码:
1 ?xml version="1.0" encoding="UTF-8"?
2
3 project name="ant-jmeter-test" default="run" basedir="."
4 tstamp
5 format property="time" pattern="yyyyMMddhhmm" /
6 /tstamp
7 !-- 需要改成自己本地的 Jmeter 目录--
8 property name="jmeter.home" value="D:\apache-jmeter-2.13" /
9 !-- jmeter生成jtl格式的结果报告的路径--
10 property name="jmeter.result.jtl.dir" value="D:\apache-jmeter-2.13\demo\report\jtl" /
11 !-- jmeter生成html格式的结果报告的路径--
12 property name="jmeter.result.html.dir" value="D:\apache-jmeter-2.13\demo\report\html" /
13 !-- 生成的报告的前缀--
14 property name="ReportName" value="TestReport" /
15 property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" /
16 property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" /
17
18 target name="run"
19 antcall target="test" /
20 antcall target="report" /
21 /target
22
23 target name="test"
24 taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" /
25 jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}"
26 !-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本--
27 testplans dir="D:\apache-jmeter-2.13\demo" includes="*.jmx" /
28
29 property name="jmeter.save.saveservice.output_format" value="xml"/
30
31 /jmeter
32 /target
33
34 target name="report"
35 xslt in="${jmeter.result.jtlName}"
36 out="${jmeter.result.htmlName}"
37 style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" /
38 !-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 --
39 copy todir="${jmeter.result.html.dir}"
40 fileset dir="${jmeter.home}/extras"
41 include name="collapse.png" /
42 include name="expand.png" /
43 /fileset
44 /copy
45 /target
46 /project
四、运行脚本:
1、cmd进入脚本目录:D:\apache-jmeter-2.13\demo
2、输入:ant 或 ant run(run为build.xml中的task名),执行结果:
D:\apache-jmeter-2.13\demoant
Buildfile: build.xml
all:
test:
[jmeter] Executing test plan: D:\apache-jmeter-2.13\demo\Google1.jmx == D:\apache-jmeter-2.13\demo\report\jtl\TestReport201509141114.jtl
[jmeter] Creating summariser summary
[jmeter] Created the tree successfully using D:\apache-jmeter-2.13\demo\Google1.jmx
[jmeter] Starting the test @ Mon Sep 14 23:14:32 CST 2015 (1442243672984)
[jmeter] Waiting for possible shutdown message on port 4445
[jmeter] summary + 1 in 1s = 1.9/s Avg: 248 Min: 248 Max: 248 Err: 1 (100.00%) Active: 1 Started: 1 Finished: 0
[jmeter] summary + 5 in 1s = 7.8/s Avg: 119 Min: 107 Max: 137 Err: 0 (0.00%) Active: 0 Started: 1 Finished: 1
[jmeter] summary = 6 in 1.2s = 5.2/s Avg: 140 Min: 107 Max: 248 Err: 1 (16.67%)
[jmeter] Tidying up ... @ Mon Sep 14 23:14:34 CST 2015 (1442243674232)
[jmeter] ... end of run
[jmeter] Executing test plan: D:\apache-jmeter-2.13\demo\测试百度.jmx == D:\apache-jmeter-2.13\demo\report\jtl\TestReport201509141114.jtl
[jmeter] Creating summariser summary
[jmeter] Created the tree successfully using D:\apache-jmeter-2.13\demo\测试百度.jmx
[jmeter] Starting the test @ Mon Sep 14 23:14:35 CST 2015 (1442243675376)
[jmeter] Waiting for possible shutdown message on port 4445
[jmeter] summary + 1 in 0.5s = 2.1/s Avg: 196 Min: 196 Max: 196 Err: 0 (0.00%) Active: 1 Started: 1 Finished: 0
[jmeter] summary + 5 in 1s = 8.4/s Avg: 113 Min: 107 Max: 133 Err: 0 (0.00%) Active: 0 Started: 1 Finished: 1
[jmeter] summary = 6 in 1.1s = 5.6/s Avg: 126 Min: 107 Max: 196 Err: 0 (0.00%)
[jmeter] Tidying up ... @ Mon Sep 14 23:14:36 CST 2015 (1442243676535)
[jmeter] ... end of run
report:
[xslt] Processing D:\apache-jmeter-2.13\demo\report\jtl\TestReport201509141114.jtl to D:\apache-jmeter-2.13\demo\report\html\TestReport201509141114.html
[xslt] Loading stylesheet D:\apache-jmeter-2.13\extras\jmeter-results-detail-report_21.xsl
[copy] Copying 2 files to D:\apache-jmeter-2.13\demo\report\html
BUILD SUCCESSFUL
Total time: 5 seconds
3、测试报告目录:D:\apache-jmeter-2.13\demo\report\html,其中有一个红色失败的案例是我故意设置失败,以便查看的。
四:最后,说一个我在使用过程中碰到一个问题,上面build.xml文件第29行有一句必须要加上:property name="jmeter.save.saveservice.output_format" value="xml"/,否则会报如下的错误:
report:
[xslt] Processing D:\Tools\apache-jmeter-2.13\demo\report\jtl\TestReport201509210923.jtl to D:\Tools\apache-jmeter-2.13\demo\report\html\TestReport201509210923.html
[xslt] Loading stylesheet D:\Tools\apache-jmeter-2.13\extras\jmeter-results-detail-report_21.xsl
[xslt] : Error! 前言中不允许有内容。
[xslt] : Error! com.sun.org.apache.xml.internal.utils.WrappedRuntimeException: 前言中不允许有内容。
[xslt] Failed to process D:\Tools\apache-jmeter-2.13\demo\report\jtl\TestReport201509210923.jtl
因为不加上这一句,生成的.jtl文件是文本文件不是xml文件,使用xsl去转换.jtl文件时就会报错。
jmeter导出结果报告
注意如果不是空的文件夹是会报错的
也可以将其他结果都填写这一个csv文件进行导出
注意这里的文件内容一定是
使用命令生成:jmeter -n -t C:\Users\sj176\Desktop\测试用户系统.jmx -l C:\Users\sj176\Desktop\testdd.csv -e -o C:\Users\sj176\Desktop\test01\
在生成的时候可能会报错
org.apache.jmeter.report.dashboard.GenerationException: Error while processing samples: Consumer failed with message :Consumer failed with message :Consumer failed with message :Consumer failed with message :Begin size 1 is not equal to fixed size 5
不过注意的是java版本如果太高可能会报
Error generating the report: org.apache.jmeter.report.dashboard.GenerationException: Error while processing samples: Consumer failed with message :Consumer failed with message :Consumer failed with message :Consumer failed with message :Begin size 0 is not equal to fixed size 5
安装兼容的java版本即可,
查看jdk安装版本,发现是17系列的。在网上查看教程发现需要更换成jdk8系列,具体安装步骤参照网上。
猜测应该是jdk17的兼容性问题。
打开结果展示: