Jmeter 报告可视化 —— 配置生成测试报告仪表板,Jmeter + Jenkins 自动化构建生成 HTML 报告

目录html

1、jmeter报告仪表板相关信息apache

2、文件修改说明api

3、jmeter.properties文件配置测试

4、user.properties文件配置ui

5、新建jtl报告目录url

6、复制jmeter.properties文件并重命名spa

7、写批处理bat文件调试

8、准备jmeter测试计划脚本日志

9、本地调试bat文件code

10、Jenkins自动化构建

1、jmeter报告仪表板相关信息
(1)点击前往查看官网说明文档:生成报告仪表板配置说明文档

(2)点击前往查看reportgenerator.properties文件译文:【jmeter】reportgenerator.properties :报表生成器属性文件译文

(3)点击前往查看user.properties文件译文:【jmeter】user.properties:用户配置文件译文

(4)【先看此文看环境准备部署:Jenkins自动构建以及构建失败会邮件通知等】点击前往查看接口HTML报告生成:

【jmeter】Jmeter接口HTML可视化测试报告——Jenkins+Jmeter+Ant自动化集成环境搭建

(5)相关配置文件个人资源下载地址:

【jmeter】jmeter报告可视化:配置生成报告仪表板,jmeter+Jenkins自动化构建生成HTML报告配置文件

2、文件修改说明
仪表板生成使用JMeter属性来自定义报告。某些属性用于常规设置,其余属性用于特定图形配置或导出器配置。

首先要先确认jmeter.properties文件配置。
而后再配置user.properties文件:
能够在文件reportgenerator.properties中找到全部报告生成器属性。
要自定义这些属性,应将它们复制到user.properties文件中并进行修改。
最后写批处理bat文件,也可部署到Jenkins,定时构建,定时更新报告,自动化报告输出。
3、jmeter.properties文件配置
jmeter.save.saveservice.output_format=csv

jmeter.save.saveservice.assertion_results_failure_message=true
jmeter.save.saveservice.data_type=true
jmeter.save.saveservice.label=true
jmeter.save.saveservice.response_code=true
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.response_data.on_error=false
jmeter.save.saveservice.response_message=true
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true
jmeter.save.saveservice.subresults=true
jmeter.save.saveservice.assertions=true
jmeter.save.saveservice.latency=true
jmeter.save.saveservice.connect_time=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.responseHeaders=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.encoding=false
jmeter.save.saveservice.bytes=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.filename=true
jmeter.save.saveservice.hostname=true
jmeter.save.saveservice.thread_counts=true
jmeter.save.saveservice.sample_count=true
jmeter.save.saveservice.idle_time=true

jmeter.save.saveservice.timestamp_format=ms
jmeter.save.saveservice.timestamp_format=yyyy/MM/dd HH:mm:ss.SSS

4、user.properties文件配置
jmeter.reportgenerator.exclude_tc_from_top5_errors_by_sampler=true

jmeter.reportgenerator.exporter.html.filters_only_sample_series=true
jmeter.reportgenerator.exporter.html.show_controllers_only=false

jmeter.reportgenerator.apdex_satisfied_threshold=500
jmeter.reportgenerator.apdex_tolerated_threshold=1500
jmeter.reportgenerator.statistic_window = 20000

在文件reportgenerator.properties中找到全部报告生成器属性。
将它们复制到user.properties文件中,并根据须要进行属性自定义修改。

5、新建jtl报告目录
新建jtl报告输出目录G:Jmeterapache-jmeter-5.0reportjtl-report-output,此目录下必定要为空:

6、复制jmeter.properties文件并重命名
(1)jmeter.properties文件的jmeter.save.saveservice.output_format须要两全,不然出现报错:

因为接口HTML报告须要jmeter.properties文件的jmeter.save.saveservice.output_format=xml,或者不设置这个字段(注释掉)才行,而设置成csv会报错;

可是仪表盘Dashboard报告却须要jmeter.properties文件的jmeter.save.saveservice.output_format=csv,设置成xml或者不设置这个字段(注释掉)都会报错。

(2)解决方案,复制jmeter.properties文件:

一个文件命名为jmeterxml.properties,该文件:jmeter.save.saveservice.output_format=xml;

另外一个文件命名为jmetercsv.properties,该文件:jmeter.save.saveservice.output_format=csv。

7、写批处理bat文件
注意:bat文件的路径和具体执行的报告输出命令的脚本名称,须要按实际状况修改。

(1)新建目录G:Jmeterapache-jmeter-5.0Bat:

(2)在Bat目录下新建如下文件名的bat文件:

① DashboardOutReport.bat:
生成Dashboard仪表盘HTML报告的批处理文件。

(会生成:
G:Jmeterapache-jmeter-5.0reportjtl-report-outputresult.jtl 报告文件、
G:Jmeterapache-jmeter-5.0reportOutReport 目录和目录下的仪表盘HTML报告、
G:Jmeterapache-jmeter-5.0reportreport-output 目录和目录下的csv报告)

② DashboardOutReport-new-create.bat:
G:Jmeterapache-jmeter-5.0reportjtl-report-outputresult.jtl文件、
G:Jmeterapache-jmeter-5.0reportOutReport目录的存在判断,若以前存在,则删掉。

③ JmeterHtmlReport.bat:
生成接口HTML报告的批处理文件。

(会生成:
G:Jmeterapache-jmeter-5.0reporthtml目录内的接口HTML报告、
G:Jmeterapache-jmeter-5.0reportjtl目录内的jtl报告)

④ JmeterHtmlReport-new-create.bat:
G:Jmeterapache-jmeter-5.0reportjtl目录下.jtl后缀名文件存在判断,若以前存在,则删掉。

⑤ JmeterProperties-name.bat:
jmeter.properties文件重命名,确保可正常调用此文件,最终也会保留1个jmeter.properties文件的批处理命令。

(3) DashboardOutReport.bat文件内的批处理命令:

@echo off
echo 重命名jmetercsv.properties为jmeter.properties
G:
cd G:Jmeterapache-jmeter-5.0Bat
call JmeterProperties-name.bat
cd G:Jmeterapache-jmeter-5.0bin
reName jmetercsv.properties jmeter.properties

echo 删除以前的result.jtl文件和OutReport目录
cd G:Jmeterapache-jmeter-5.0Bat
call DashboardOutReport-new-create.bat
del /s /q G:Jmeterapache-jmeter-5.0reportjtl-report-outputresult.jtl
rd /s /q G:Jmeterapache-jmeter-5.0reportOutReport

echo 执行脚本输出Dashboard报告(wangyueche.jmx:要输出报告的jmeter脚本名称,需自定义修改)
cd G:Jmeterapache-jmeter-5.0bin
jmeter -n -t G:Jmeterapache-jmeter-5.0workspacewangyueche.jmx -l G:Jmeterapache-jmeter-5.0reportjtl-report-outputresult.jtl -e -o G:Jmeterapache-jmeter-5.0reportOutReport
(4)DashboardOutReport-new-create.bat文件内的批处理命令:

@echo off
echo result.jtl文件判断
SET GenFile=G:Jmeterapache-jmeter-5.0reportjtl-report-outputresult.jtl

if not exist %GenFile% (

rem 建立空文件G:\Jmeter\apache-jmeter-5.0\report\jtl-report-output\result.jtl
    rem 若是须要添加内容,少许的,能够用内容把“nul”替换掉,好比:type 这是文件内容>%GenFile%;多的话则使用复制方法
    type nul>%GenFile%
    echo %GenFile%文件不存在,已建立该文件!
) else (
    rem 文件G:\Jmeter\apache-jmeter-5.0\report\jtl-report-output\result.jtl已存在,无需建立
    echo %GenFile%文件已存在,无需建立!    
)

echo OutReport目录判断
SET GenFolder=G:Jmeterapache-jmeter-5.0reportOutReport

if not exist %GenFolder% (

rem 建立空目录G:\Jmeter\apache-jmeter-5.0\report\OutReport
    rem 建立非空目录,使用复制方法
    echo %GenFolder%目录不存在,已建立该目录!
    md %GenFolder%
) else (
    rem 目录G:\Jmeter\apache-jmeter-5.0\report\OutReport已存在,无需建立
    echo %GenFolder%目录已存在,无需建立!    
)

(5)JmeterHtmlReport.bat文件内的批处理命令:

@echo off
echo 重命名jmeterxml.properties为jmeter.properties
G:
cd G:Jmeterapache-jmeter-5.0Bat
call JmeterProperties-name.bat
cd G:Jmeterapache-jmeter-5.0bin
reName jmeterxml.properties jmeter.properties

echo 删除以前的.jtl报告
cd G:Jmeterapache-jmeter-5.0Bat
call JmeterHtmlReport-new-create.bat
del "G:Jmeterapache-jmeter-5.0reportjtl"***.jtl

echo 执行脚本输出HTML测试报告
cd G:Jmeterapache-jmeter-5.0extras
ant.bat -file build.xml -Dtest=Test
(6)JmeterHtmlReport-new-create.bat文件内的批处理命令:

@echo off
echo .jtl后缀名文件判断
SET GenFile="G:Jmeterapache-jmeter-5.0reportjtl"***.jtl

if not exist %GenFile% (

rem 建立空文件G:\Jmeter\apache-jmeter-5.0\report\jtl\newfile.jtl
    rem 若是须要添加内容,少许的,能够用内容把“nul”替换掉,好比:type 这是文件内容>文件路径\新文件名;多的话则使用复制方法
    type nul>G:\Jmeter\apache-jmeter-5.0\report\jtl\newfile.jtl
    echo %GenFile%文件不存在,已建立该文件!
) else (
    rem 文件"G:\Jmeter\apache-jmeter-5.0\report\jtl"\***.jtl已存在,无需建立
    echo %GenFile%文件已存在,无需建立!    
)

(7)JmeterProperties-name.bat文件内的批处理命令:

@echo off
echo jmeter.properties文件存在判断
SET GenFileName=G:Jmeterapache-jmeter-5.0binjmeter.properties
SET xmlFileName=G:Jmeterapache-jmeter-5.0binjmeterxml.properties
SET csvFileName=G:Jmeterapache-jmeter-5.0binjmetercsv.properties

if exist %GenFileName% (

rem 修改jmeter.properties文件名
    if not exist %xmlFileName% ( 
            rem 修改jmeter.properties文件名
            cd G:\Jmeter\apache-jmeter-5.0\bin
            reName jmeter.properties jmeterxml.properties                
            echo jmeter.properties文件已重命名为jmeterxml.properties!
        ) else (
            rem 修改jmeter.properties文件名
            cd G:\Jmeter\apache-jmeter-5.0\bin
            reName jmeter.properties jmetercsv.properties
            echo jmeter.properties文件已重命名为jmetercsv.properties!              
        )        
    echo %GenFileName%已重名成功!
    ) else (
        echo %GenFileName%不存在,不用重名!
    )

8、准备jmeter测试计划脚本
新建G:Jmeterapache-jmeter-5.0workspace目录:

9、本地调试bat文件
(1)双击DashboardOutReport.bat和JmeterHtmlReport.bat文件会生成jmeter仪表盘报告

(2)bat文件执行cmd窗口显示中文乱码的,解决方法:

【cmd】批处理:bat文件执行,cmd会显示中文乱码,Jenkins日志显示中文乱码——解决方案

(3)DashboardOutReport.bat执行成功后:

(4)meterHtmlReport.bat执行成功后:

10、Jenkins自动化构建
 (1)Jenkins任务部署:

点击前往查看个人另外一博文:【jmeter】Jmeter接口HTML可视化测试报告——Jenkins+Jmeter+Ant自动化集成环境搭建

@echo offecho 执行并输出apiHTML测试报告G:cd G:Jmeterapache-jmeter-5.0Batcall JmeterHtmlReport.bat@echo offecho 执行并输出DashboardHTML测试报告G:cd G:Jmeterapache-jmeter-5.0Batcall DashboardOutReport.bat(2)Jenkins执行成功,而且因为设置定时任务,还会自动在本地报告目录按时更新HTML报告:

相关文章
相关标签/搜索