目录
[(一)Manage Jenkins------Tools系统管理->全局工具配置](#(一)Manage Jenkins——Tools系统管理->全局工具配置)分别配置JDK、Maven、Allure、Git,可以配置路径或者直接选择版本安装
[1、jdk 配置](#1、jdk 配置)
[3、Allure Commandline](#3、Allure Commandline)
[(二) Manage Jenkins -> System](#(二) Manage Jenkins -> System)
[3、配置Extended E-mail Notification:](#3、配置Extended E-mail Notification:)
[1、源码管理 Source Code Management](#1、源码管理 Source Code Management)
[2.1 build periodically](#2.1 build periodically)
[2.2 poll scm](#2.2 poll scm)
[2. 3 时间表达式](#2. 3 时间表达式)
[项目------一般设置------参数化构建 This project is parameterized](#项目——一般设置——参数化构建 This project is parameterized)
[5、构建 执行命令](#5、构建 执行命令)
[Post-build Actions -> Editable Email Notification](#Post-build Actions -> Editable Email Notification)
一、Jenkins
基于 Java 开发的持续集成工具,开源免费,官网下载: https://jenkins.io/download/
- 持续、自动地构建/测试软件项目。
- 更好地实现整个CI/CD流程。
二、Jenkins****环境搭建
通过docker搭建的方式可见【这篇笔记】
1、下载所需的软件包
-
Jenkins Jenkins download and deployment
2、部署步骤
- 下载war包:jenkins.war
- 部署到tomcat(jenkins.war包放到tomcat的webapps目录)
- 启动Tomcat(进入到tomcat的bin目录下,找到startup.bat脚本执行启动即可)
- 验证:http://localhost:8080/jenkins/
3、其他
- 获取密码
在第一次使用jenkins的时候默认会生成一个密码文件%JENKINS_HOME%\secrets\initialAdminPassword
打开文件,复制其中的初始登录的密码,粘贴然后登录
修改密码:系统管理--》管理用户
- 启动后:Jenkins提示离线
打开jenkins->系统管理->管理插件->高级
或打开链接:http://ip:端口/jenkins/pluginManager/advanced
将升级站点http://updates.jenkins-ci.org/update-center.json换成http://mirror.esuni.jp/jenkins/updates/update-center.json
重启Tomcat
三、Jenkins全局设置
(一)Manage Jenkins------Tools系统管理->全局工具配置
分别配置JDK、Maven、Allure、Git,可以配置路径或者直接选择版本安装
1、jdk 配置
如果机器上已经装了jdk,直接指定JAVA_HOME目录即可
2、maven配置
如果机器上有下载maven,指定一个MAVEN_HOME目录即可。
3、Allure Commandline
4、Git配置
(二) Manage Jenkins -> System
Jenkins配置邮件发送
1、下载邮件插件
进入Manage Jenkins -> Plugin Manager,下载Email Extension插件
2、配置系统管理员邮箱地址:
3、配置Extended E-mail Notification:
密码不是邮箱密码是要生成授权码
四、Jenkins创建任务及配置
- 新建------Freestyle project 自由风格的项目
- 新建------构建一个maven项目**(如果没有这个选项,你需要在** Jenkins里面安装Maven插件)在管理插件中下载maven插件:maven intergration
1、源码管理Source Code Management
subversion/Git -> 填写项目repository url+credentials(用户名+密码)验证
2、构建触发器
构建触发器是Jenkins启动一个Job构建的条件,当条件满足时,Job启动。可以设置为测试人员commit后自动编译(比如5分钟update一次svn,如果有提交则执行构建),或定时构建(比如每天晚上0点定时构建)
2.1 build periodically
隔一段时间build一次,不管版本库代码是否发生变化。
2.2 poll scm
隔一段时间比较一次源代码如果发生变更,那么就build。否则,不进行build。
2. 3 时间表达式
时间表达式是由五部分组成,每一部分中间由空格隔开,如下:
MINUTE HOUR DOM MONTH DOW
-
MINUTE 分钟值 (0--59)
-
HOUR 时钟值(0--23)
-
DOM 日期 (1--31)
-
MONTH 月份 (1--12)
-
DOW 一周中的某一天(0--7) 0和7都代表周天
每一部分还可以设置为以下的值
-
*:指所有的值
-
M-N:指一个范围区间内的值
-
M-N/X 或 */X:指(在一个范围内/所有)满足间隔X的值
-
A,B,...,Z:列举了这一部分所有的值
举例
-
每天的晚上八点钟 0 20 * * *
-
每月的第10号晚上零点 0 0 10 * *
-
每天晚上的八点10分到15分 10-15 20 * * *
-
每间隔10分钟 */10 * * * *
-
每间隔1小时 * */1 * * *
-
前三十分钟内每间隔5分钟 0-30/5 * * * *
-
每天的20,21,23点执行 0 20,21,23 * * *
3、丢弃旧的构建
4、参数化
项目------一般设置------参数化构建 This project is parameterized
字符参数、选项参数、布尔参数用的相对多一些
比如:需要打印的时候,打印出参数,控制台打印------参数/{参数}
5、构建 执行命令
maven项目后续的操作和freestyle项目一样的,包括参数化构建、报表等都没有区别;
主要区别是,mvn项目的命令行只能执行mvn命令,直接命令就是clean test
freestyle项目,可以执行所有命令,包括mvn,echo等等;执行时候不能省略mvn,需要写成mvn clean test
6、构建后的操作
配置job任务------add post-build action
选择allure report
设置下allure-results目录的路径(相对路径,基于项目)
报表展示
在任务页面的左边菜单里会出现allure report选项,点击即可访问到allure报告
可将此url地址设置到邮件内容中发送给相关人
7、Jenkins配置邮件发送
1、配置收件人及邮件内容
Post-build Actions -> Editable Email Notification
2、设置触发器
3、邮件可读权限------勾选匿名用户具有可读权限
五、jenkins中文乱码解决方案
解决方式一:环境变量配置
系统管理->系统设置
Name:JAVA_TOOL_OPTIONS
Value:-Dfile.encoding=UTF-8
**方式二:**Jenkins全局设置
系统管理->系统设置
添加"全局属性"
设置key:LANG value:zh_CN.UTF-8