jenkins通过命令行方式执行jmeter脚本及查看html报告

jenkins版本:2.297

jmeter版本:5.4.1

前提条件:已调试好jmeter脚本

jenkins构建:

1、新建自由风格的item

2、设置构建操作

构建预处理:

set now=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%
mkdir report获取业务名称类型级联\%now%
xcopy /E/Y report获取业务名称类型级联latest* report获取业务名称类型级联\%now%
rd /s /q report获取业务名称类型级联latest

以上命令的解释说明:

新建时间变量now

新建时间戳命名的文件夹

复制latest文件夹里上次运行的所有最新结果到文件名为时间戳的文件夹中进行历史备份

清空latest文件夹,以便保存接下来的构建操作结果

构建命令:

D:apache-jmeter-5.4.1injmeter -n -t D:2.workspaceJmeterRPA性能测试脚本20210609单接口获取业务名称类型级联.jmx -l D:2.workspacejenkinsworkspaceRPA-Commad eport获取业务名称类型级联latest获取业务名称类型级联.jtl -e -o D:2.workspacejenkinsworkspaceRPA-Commad eport获取业务名称类型级联latest -JthreadNum=50 -JrampupTime=10 -Jduration=10

3、设置构建后操作,采用HTML Publisher plugin展示测试执行后生成的最新html报告

说明:jenkins上使用HTML Publisher plugin插件生成的html报告样式会丢失,需要设置下才能正常显示。

关于样式丢失,官方文档的解释如下,参考地址https://stackoverflow.com/questions/35783964/jenkins-html-publisher-plugin-no-css-is-displayed-when-report-is-viewed-in-j

从安全性考虑,禁止了css和js的加载,所以无法展示。

This rule set results in the following:

  • No JavaScript allowed at all
  • No plugins (object/embed) allowed
  • No inline CSS, or CSS from other sites allowed
  • No images from other sites allowed
  • No frames allowed
  • No web fonts allowed
  • No XHR/AJAX allowed, etc. 

 

 解决办法:

1、如果是jenkins.msi的安装,找到jenkins.xml文件

2.用Notepad++打开这个jenkins.xml文件,找到下图的arguments这一行,红色区域改成如下,改好后保存:

原来是:-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar

修改后:-Xrs -Xmx256m -Dhudson.model.DirectoryBrowserSupport.CSP= -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar

 3、重启jenkins,在地址栏jenkins的首页后加restart,如 http://localhost:8080/restart ,点Yes就能重启了

 4、重启后,再重新构建之前生成html的job任务,就能正常展示html报告了

原文地址:https://www.cnblogs.com/apple2016/p/14888652.html