jenkins搭建和使用
一、jenkins介绍
1、持续集成(CI) Continuous integration 持续集成 团队开发成员每天都有集成他们的工作,通过每个成员每天至少集成一次,也就意味着一天有可 能多次集成。在工作中我们引入持续集成,通过持续集成自动构建(代码的编译、发布、部署、 用例的更新和自动化执行),从而达到尽早发现代码集成的错误。
例如:一个项目有a,b,c ;任何一个改动代码,都要去集成;
2、在没有持续集成时,开发的模式是:
第一步:项目一开始划分模块,将模块分配给对应的开发
第二步:开发对自己所负责的模块进行开发以及对应后期的单元测试
第三步:等所有模块开发完成后,由项目老大(开发负责人)对所有模块的代码进行集成
第四步:将集成好的代码部署到环境上,交由测试人员进行集成测试
第五步:测试过程中发现bug,测试人员提交bug并进行记录
第六步:对应的开发人员进行bug修复
第七步:等所有开发人员将bug修复好,再进行代码集成,交给测试进行回归测试 这样我们会陷入一个循环:修改bug集成代码部署测试的循环中
缺陷: a.bug永远都是在最后才发现,不能及时发现。 b.这样的话测试效率低,使得交付效率质量差。
3、用Jenkins做持续集成的目的:及时发现bug,提高效率
4、持续集成的优点:
1、统一的代码库
2、自动部署和构建
3、自动测试
4、保证项目的交付质量
5、用什么实现持续集成?
使用Jenkins工具能帮我们实现持续集成6、什么是Jenkins?
是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
7、Jenkins有哪些功能
1)持续的软件版本发布/测试项目。
2)监控外部调用执行的工作。
8、Jenkins拥有的特性包括:
1)易于安装只要把jenkins.war部署到servlet容器,不需要数据库支持。
2)易于配置所有配置都是通过其提供的web界面实现。
3)集成RSS/Email通过RSS发布构建结果或当构建完成时通过email通知。
4)生成JUnit/TestNG测试报告。
5)分布式构建支持Jenkins能够让多台计算机一起构建/测试。
6)文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
7)插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。
Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员省时省力提高开发效率。
8、Jenkins中的节点?
一个节点是一个代理服务器。建议使用字母、数字或字母和数字的组合。
最好见名知意。不建议 使用标点符号和中文(中文命名没有问题,但Job中无法引用)
二、Jenkins环境搭建(linux中)
JDK1.8 最好安装1.8的
Jenkins.war包
二、安装JDK (jdk8u60windowsx64.exe) 把JDK放入G盘,双击jdk8u60windowsx64,安装路径放入为G:\java
解压tomcat
启动服务器:
三、linux环境上搭建jenkins
第一步:把本地jenkins.war包存放到tomcat路径下apachetomcat7.0.56/webapps
第二步:启动tomcat,启动后jenkins.war包会自动解压,生成一个jenkins目录
第三步:浏览器地址栏中输入IP地址+8080端 口/jenkins(http://192.168.157.129:8080/jenkins),正常打开jenkins应用页面 如果页面报错要关闭防火墙:service iptables stop
页面显示如下:
Jenkins管理员密码已经写入服务器/root/.jenkins/secrets/initialAdminPassword 文件中, 复制密码粘贴到下面的文本框中。
讲解下:/root 路径就是 cd ~
cat /root/.jenkins/secrets/initialAdminPassword
密码: 41ec6d8ca3d04ec9a6b8c9d1b4b1d580
第四步:在linux环境中输入命令: cat /root/.jenkins/secrets/initialAdminPassword ,复 制密码 到文本框中,点击continue
复制:密码:41ec6d8ca3d04ec9a6b8c9d1b4b1d580
四、jenkins添加节点 第一步:首页点击系统管理——》管理节点——》新建节点
(注意点:(先设置全局安全配置))
第二步:输入节点名称,勾选固定代理
第二步:勾选启用安全
第三步:代理中选额随机选取,代理协议都进行勾选
第四步:选择应用,保存>然后点击test_vm
构建项目:
五、Jenkins构建项目:
第一步:首页,点击开始创建一个新任务输入一个项目名称,选择构建一个自由风格的软件项 目,最后确定
举例:名称:test1
输入项目名称
第二步:输入项目具体配置
项目名称:自定义
限制可以运行该项目的位置:输入标签,标签为代理的标签(指定项目在哪个代理机上执行)
或者
3.构建:点击增加构建步骤 ,选择执行windows批处理命令
python+绝对路径
5.点击保存>然后点击立即构建>构建完成之后点击#2>点击控制台输出就可以看到相关的 日志了
复制报告地址在浏览器输入: G:\jenkins\workspace\auto_test\report.html
6.如果出现下面的错误(没有没有出现就忽略):
那么就给项目添加一个工作空间,如果系统自动选择工作空间是master,那么就进行修改
也可以使用自己自定义的工作空间,就是工作空间与代理服务器工作空间不同的时候
可以自定义工作空间
如果出现如下报错:
hudson.AbortException: No files found in path G:\jenkins\output\auto_test with configured filemask: output.xml 就需要把工作空间和日志输出路径都改为G:\jenkins就可以了。
7.构建触发器(设置定时任务) Build periodically 在日程表中设置
触发器是用于控制自动化测试执行时间的 日程表里有5个数字,分别为:
H * * * *
第一个* 表示: 分钟:0—59
第二个** 表示: 小时:0–23
第三个* 表示 日:1—31
第四个* 表示 月:1—12
第五个* 表示 周:0–7 0和7都代表星期天
H 表示随机
- 表示所有
- 表示连续
/ 表示间隔
, 表示和
M-N 指定一个范围值
例如: 每15分钟执行一次 H/2 * * * * (注意:要空一格,H/2 每隔两分钟,第二个* 任何时 ,第三个* 表示任何日,第四个* 表示任何的月,第五个* 表示任意周 )
每天8至点16点,每1小时执行一次 H 8-16/1 * * *
每前半小时中,间隔10分钟 H/(0-30)/10 * * * *
每个工作日从早上9:45分钟到下午3:45分中结束这段时间内,每间隔2小时的45分钟那一刻。45 9-15/2 * * 1-5
每个工作日从早上9:00 到下午5:00 这段时间内每间隔2小时的的某刻;
H (9-17)/2 * * 1-5
==============================================
拓展:
jenkins +git 拉取代码
jenkins+svn 拉取代码