- C:\Users\Tommy>java -version
- java version "1.8.0_341"
- Java(TM) SE Runtime Environment (build 1.8.0_341-b10)
- Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)
- Apache Tomcat/9.0.65
-
- https://tomcat.apache.org/download-90.cgi
-
-
- jenkins.war 2.99
-
- https://get.jenkins.io/war/2.367/jenkins.war
1.将下载好的jenkins.war包,放入tomcat文件夹下的webapps,war包不需要单独解压
2.返回到上一层目录找到tomcat文件夹下的bin目录,运行startup.bat启动tomcat服务,启动时,jenkins.war会自动解压并生成一个jenkins文件夹
3.服务启动后,浏览器输入:http://你的ip:8080/jenkins,大概会有1-2分钟左右的空白页面,稍等一下如出现下图则表示启动服务并进入jenkins成功
4.输入jenkins生成的密码,密码在红色文件夹路径中可以查看,输入后并进入,稍等数秒后,选择插件来安装
如果网速比较好可以选择安装推荐的插件,因为外国服务,大部分插件都会安装异常或者网络异常
这里我们先安装Ant插件就可以了
5.安装后检查ant插件是否安装成功,在jenkins首页,插件管理入口(Manage Plugins)
在已安装页面,输入插件名称,看见有uninstall,说明已经安装过
1.比如安装目录为盘F:XXX文件夹即可
2.返回到jenkins页面,点击全局工具配置(Global Tool Configuration)
找到Ant入口,如果没有看见ant,说明还没有成功安装ant插件
输入一个自定义ant名称(后面,构建build配置需要使用),并输入指定路径,应用保存即可
1.在jenkins配置任务,新建item
必须选择 Freestyle project,OK
2.进入构建页面
Build-Build-Invoke Ant-Advanced(高级设置)
targets就是等于xml模板中的任务名,如果不填,则按照xml文件default处理,否则按照填写的处理
设置build文件路径,就是jmeter生成报告的模板,可以自行修改或自行下载即可
点击 应用 apply 和 保存 save
build.xml文件,执行jmx的时候性能场景+生成性能场景测试报告+发送邮件通知
default="all" :所有
<project name="Jmeter-CICD" default="all" basedir=".">
xml中多个变量引用,一开始就是为变量创建其中
定义:property name="jmeter.home"
引用:value="${jmeter.home}
- <property name="jmeter.home" value="C:\apache-jmeter-5.3" />
- <property name="report.title" value="JMeter_Testing_Report_CICD"/>
- <!-- jmeter生成jtl格式的结果报告的路径-->
- <property name="jmeter.result.jtl.dir" value="${jmeter.home}\worklogs\jtl" />
- <!-- jmeter生成html格式的结果报告的路径-->
- <property name="jmeter.result.html.dir" value="${jmeter.home}\worklogs\html" />
- <!-- 生成的报告的前缀-->
- <property name="ReportName" value="PerformReport" />
- <property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}\${ReportName}${time}.jtl" />
- <property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}\${ReportName}${time}.html" />
其中target有,test,report,mail三个任务,每个target都有自己独立的name
- <target name="all">
- <antcall target="test" />
- <antcall target="report" />
- <antcall target="mail" />
- </target>
假设jmeter脚本里面
有多个程组会并行执行,除非在测试计划(Test Plan)勾选"独立运行每一个线程组";
有线程组1,2,3,其中3号禁用,只会执行1,2;
- <target name="test">
- <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
- <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
- <!-- 声明要运行的脚本"*.jmx"指包含此目录下的所有jmeter脚本-->
- <testplans dir="${jmeter.home}\bin\testcase" includes="kyj_project.jmx" />
- <!-- 输出格式为:xml-->
- <property name="jmeter.save.saveservice.output_format" value="xml"/>
- </jmeter>
- </target>
回到jenkins中进入项目build now 一下,等待报告生成
查看构建的详细信息,以及报告位置
报告模板的大致内容如下
jmeter全部失败报错
jmeter全部正确无报错