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/E­mail通过RSS发布构建结果或当构建完成时通过e­mail通知。

4)生成JUnit/TestNG测试报告。

5)分布式构建支持Jenkins能够让多台计算机一起构建/测试。

6)文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。

7)插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。

Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员省时省力提高开发效率。

8、Jenkins中的节点?

一个节点是一个代理服务器。建议使用字母、数字或字母和数字的组合。

最好见名知意。不建议 使用标点符号和中文(中文命名没有问题,但Job中无法引用)

 二 .jenkins 搭建流程(linux中)

(一)jdk安装

JDK1.8 最好安装1.8的:

查看jdk是否安装好

(2)安装jdk

命令:rpm -ivh  jdk-8u121-linux-i586.rpm

(3)查看jdk:java -version

(二)服务器安装

(1)上传服务器包

(2)解压服务器:tar -zxvf apache-tomcat-7.0.56.tar.gz

(2)进入apache

(3)再到bin目录下启动 文件

注意关闭防火墙:

(4)查看ip地址

(5)再浏览器中访问:

http://192.168.150.136:8080/

(6)关闭服务

(7)查看服务状态

(8)到webapp目录下将所有包和文件删除

(9)将jenkins的包上传

(10)上传成功后,要通过启动解压

(11)访问jenkins

(12)复制管理员密钥,点击继续

4d137a18025d4031a798b2eb7efc0fe3

(13)选择安装插件

 


三、jenkins的基本操作

(1)登录jenkins

(2)修改密码

(3)配置节点

  • 新建节点

  • 编辑节点名称

  • 编辑节点配置

添加节点成功需要设置安全代理才能激活添加的节点

  • 激活节点

  • 将jar下载到指定的路径

  • 再到dos命令下的路径:E:\az\wx

  • 执行

  • 配置节点成功

(4)安全设置中,勾选代理

(5)新建项目

  • 编辑项目名称

  • 编辑项目

  • 点击构建

 

  • 运行后的结果

  • 查看运行的日志

(6)定时构建

构建触发器(设置定时任务) Build periodically 在日程表中设置 触发器是用于控制自动化测试执行时间的 日程表里有5个数字,分别为:H * * * *

  • 第一个* 表示: 分钟:0­—59
  • 第二个* 表示: 小时:0­–23
  • 第三个* 表示 :日1­—31
  • 第四个* 表示 :月 1­—12
  • 第五个* 表示 周:0–­7 0和7都代表星期

H  表示随机

*   表示所有 -  表示连续

/   表示间隔

, 表示和 M-N 指定一个范围值

例如:

每2分钟执行一次 H/2 * * * * (注意:要空一格,H/2 每隔两分钟,第二个*  任何时  ,第三个* 表示任何日,第四个* 表示任何的月,第五个* 表示任意周  )

工作日每2分钟执行一次    H/2  *  *  *   1-5

工作日每隔2小时执行一次    H H/2  *  *   1-5

每天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

  • 构建后的结果:

 

posted @ 2025-04-03 15:51  uai  阅读(26)  评论(0)    收藏  举报