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報告:

相關文章
相關標籤/搜索