什么是 Jenkins为什么要使用持续集成(CI)工具?
什么是 Jenkins?
Jenkins 是一个开源的持续集成服务器,用 Java 用于协调一系列操作,以自动化的方式实现持续集成过程。 Jenkins 支持软件的完整开发生命周期,包括构建、测试、编写软件文档、部署以及软件开发生命周期的其他阶段。
Jenkins 是一款在全球范围内广泛使用的应用程序,拥有约 300 万次安装量,并且每天都在增长。通过使用 Jenkins软件公司可以加快其软件开发流程,因为 Jenkins 可以快速实现自动化构建和测试。
这是一个基于服务器的应用程序,需要像 Apache Tomcat 这样的 Web 服务器。原因 Jenkins 软件之所以如此受欢迎,是因为它能够监控项目开发过程中出现的重复性任务。例如,如果你的团队正在开发……ping 一个项目, Jenkins 我们会持续测试您的项目构建,并在开发初期就向您展示错误。
什么是持续集成?
持续整合 是将多个开发人员的代码更改多次集成到一个项目中的过程。代码提交后会立即对软件进行测试。每次代码提交时,都会构建和测试代码。如果测试通过,则测试构建以进行部署。如果部署成功,则将代码推送到生产环境。
此提交、构建、测试和部署是一个持续的过程,因此称为持续集成/部署。
如何 Jenkins 工作?
Jenkins 是一个基于服务器的应用程序,需要像 Apache Tomcat 这样的 Web 服务器才能在各种平台上运行,例如 Windows,Linux, macOS,Unix 等。使用 Jenkins你需要创建管道,管道是一系列步骤。 Jenkins 服务器将进行处理。 Jenkins 持续集成管道是一个强大的工具,它由一系列旨在实现以下目标的工具组成: 主持人, 监控, 编 和 实验 代码或代码更改,例如:
- 持续集成服务器 (Jenkins, Bamboo, CruiseControl, TeamCity, 和别的)
- 源代码控制工具 (例如 CVS、SVN、GIT、Mercurial、Perforce、ClearCase 等)
- 构建工具 (Make、ANT、Maven、Ivy、 Gradle, 和别的)
- 自动化测试框架 (Selenium, Appium, TestComplete, UFT, 和别的)
Jenkin 历史
- 川口浩介 Java 曾在 SUN Microsystems 工作的开发人员厌倦了反复构建代码和修复错误。2004 年,他创建了一个名为 Hudson 的自动化服务器,用于自动执行构建和测试任务。
- 2011年, Oracle Sun Microsystems 的所有者与 Hudson 开源社区发生了纠纷,因此他们将 Hudson 分支出来并更名为…… Jenkins.
- 哈德森和 Jenkins 继续独立运营。但在很短的时间内, Jenkins Hudson 只保留了 32 个项目,而其他公司则获得了大量项目和贡献者。随着时间的推移, Jenkins 变得越来越受欢迎,Hudson 已经不再维护了。
为什么要使用持续集成? Jenkins?
有些人可能认为老式的发展方式ping 使用软件是更好的方法。让我们来了解一下持续集成 (CI) 的优势。 Jenkins 以下示例
假设有 10 位左右的开发人员正在开发一款 共享库。有些开发人员在 25 天内完成任务,而其他开发人员则需要 30 天才能完成。
| 之前 Jenkins | 后 Jenkins |
|---|---|
| 一旦所有开发人员完成了分配给他们的编码任务,他们就会同时提交他们的代码。 Later,构建已测试并部署。
Code 提交构建完成,但测试周期非常不频繁,很多天后才进行了一次构建。 |
开发人员提交代码后,代码就会被构建和测试。Jenkin 会在一天内多次构建和测试代码
如果构建成功,那么 Jenkins 将源代码部署到测试服务器,并通知部署团队。 如果构建失败,那么 Jenkins 会将错误通知开发团队。 |
| 由于代码是一次性构建的,因此一些开发人员需要等到其他开发人员完成编码后才能检查他们的构建 | 任何开发人员提交后,代码就会立即构建。 |
| 隔离、检测和修复多个提交的错误并非易事。 | 由于代码是在单个开发人员每次提交后构建的,因此很容易检测出是谁的代码导致了构建失败 |
| Code 建立和 测试流程 都是完全手动的,因此失败的可能性很大。 | 自动化构建和测试过程节省时间并减少缺陷。 |
| 一旦所有错误都得到修复并测试,代码就会被部署。 | 每次构建和测试成功后都会部署代码。 |
| 开发周期缓慢 | 开发周期快。新功能更容易被用户使用。增加利润。 |
持续集成的真实案例研究
我相信大家都知道诺基亚的旧手机。诺基亚曾经实施过一种称为夜间构建的程序。在白天来自不同开发人员的多次提交之后,该软件每天晚上都会构建。由于该软件每天只构建一次,因此在大型代码库中隔离、识别和修复错误非常麻烦。
Later,他们采用了持续集成方法。开发人员提交代码后,软件就会立即构建和测试。如果发现任何错误,相应的开发人员可以快速修复缺陷。
Jenkins 插件
默认情况下, Jenkins 功能有限。如果您想集成您的 Jenkins 如果使用 Git 等版本控制工具进行安装,则需要安装与 Git 相关的插件。实际上,如果要与 Maven 等工具集成, Amazon EC2,您需要在服务器上安装相应的插件。 Jenkins.

使用优势 Jenkins
- Jenkins 它由一个非常开放的社区管理。他们每月都会举行公开会议,听取公众对发展的意见。 Jenkins 项目。
- 到目前为止,大约有 280 张票已经关闭,该项目每三个月发布一次稳定版本。
- 随着科技的发展,也随之发展 Jenkins. 迄今为止 Jenkins 其插件数据库中已发布约 320 个插件。有了这些插件, Jenkins 功能更加强大,特性更加丰富。
- Jenkins 该工具还支持基于云的架构,因此您可以进行部署。 Jenkins 在基于云的平台上。
- 之所以 Jenkins 之所以流行,是因为它是由开发者为开发者创建的。
使用的缺点 Jenkins
虽然 Jenkins 它是一个功能非常强大的工具,但它也有缺陷。
- 与当前的 UI 趋势相比,它的界面已经过时且不够用户友好。
- 虽然 Jenkins 虽然深受许多开发者的喜爱,但维护起来却并不容易,因为 Jenkins 运行在服务器上,需要服务器管理员具备一定的技能来监控其活动。
- 许多人不实施的原因之一是 Jenkins 这是由于其安装和配置困难造成的。 Jenkins.
- 持续集成经常会因一些小的设置更改而中断。持续集成将暂停,因此需要开发人员注意。
结语
- 在持续集成中,代码提交后,软件将立即构建和测试
- Jenkins 用于协调软件项目中持续集成的一系列操作
- 之前 Jenkins 当所有开发人员完成分配的编码任务后,他们会同时提交代码。 Later,构建已测试并部署。
- 后 Jenkins 开发者提交代码后,代码会立即被构建和测试。Jenkins 会在一天内多次构建和测试代码。
- 默认情况下, Jenkins 功能有限。如果您想集成您的 Jenkins 如果使用 Git 等版本控制工具进行安装,则需要安装与 Git 相关的插件。另请查看 最棒的 Jenkins 替代工具
- 最大的优点 Jenkins 它由社区管理,社区会召开公开会议,并听取公众意见以进行发展。 Jenkins 工程
- 最大的骗局 Jenkins 它的界面过时,与当前的UI设计趋势相比不够友好。如果您正在考虑其他可能提供更现代用户体验的选择,不妨了解一下…… 顶级持续集成工具 可用。

