准备工作:
1.已完成testng框架下的接口测试代码的开发 (可以根据本文集下1-5完成设计)
2.配置好Jenkins服务
3.代码已上传git仓库
群聊机器人.png
TestNg代码端的配置:
1.生成需要执行的testng.xml文件(此文中有对应的生成方式:https://www.jianshu.com/p/f087e9051726)
2.新建一个testng-results.xml的文件(jenkins中会用到)
3.pom.xml 文件配置,设置build标签,其中suiteXMLFile为要执行的xml文件,也就第一步生成的testng.xml文件。
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<testSourceDirectory>src/main/java</testSourceDirectory>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<forkMode>once</forkMode>
<skipTests>false</skipTests>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
</plugins>
</build>
Jenkins端的配置:
1.设置jdk、maven、git:
(1)进入jenkins系统设置页面:http://10.10.0.1:8888/manage,进入全局工具配置。
全局配置.png
(2)jdk点击新增后配置JAVA_HOME的路径(路径为与jenkins服务相同linux服务器对应的jdk配置)
jdk配置.png
(3)配置maven,直接选择自动安装即可:
maven安装.png
(4)配置git,直接选择自动安装即可:
git配置.png
(5)完成后点击应用,并保存。
2.新建配置流水线
(1)新建一个maven任务工程,选择maven项目:
新建流水线.png
(2)配置源码管理,git地址及账号
git配置.png
配置后默认的分支为master,可以根据自己代码的分支进行修改(向下滑动即可找到):
分支.png
(3)配置自动构建任务:
定时构建.png
日程表语法规则:
分 时 天 月 周
比如每周1到周三,10点-11点每分钟执行一次: H/1 10-11 * * 1-3
(4)新增一个 maven执行语句 :mvn clean test,并配置build文件
mvn.png
(5)新增构建后配置,配置测试报告输出文件(此文件就是testng配置中准备的testng-results.xml),配置微信通知(准备的通过群内机器人新增的内容,复制webhook)
构建后配置.png
(6)应用并保存配置
3.点击立即构建,可以进入构建位置,刷新之后可以看到对应的testngresults:
results.png
并且企业微信会推送对应的通知:
企业微信通知.png
4.后面就会根据定时任务配置的内容定时执行了。
5.补充:日志过多可以设置自动清理,超过多少天数或者个数自动进行清理
当然也可以手动清理:去到系统管理-脚本命令行:
def jobName = "test" //删除的项目名称
def maxNumber = 100 // 保留的最小编号,意味着小于该编号的构建都将被删除
Jenkins.instance.getItemByFullName(jobName).builds.findAll {
it.number <= maxNumber
}.each {
it.delete()
}