文章目录

  • 持续集成工具 Jenkins
  • 1 从装修厨房看项目开发
  • 1.1 持续部署【CD】
  • 1.2 持续集成【CI】
  • 1.3 持续交付
  • 1.4 总体目标
  • 2 持续集成工具
  • 2.1 Jenkins
  • 2.2 技术组合
  • 3 Java EE 项目部署方式
  • 3.1 手动部署
  • 3.2 自动化部署


持续集成工具 Jenkins

1 从装修厨房看项目开发

1.1 持续部署【CD】

  • 问题:一个环节有问题,其他环节跟着返工
  • 解决方案:任何安装完成及时测试,确保可以正常工作

1.2 持续集成【CI】

  • 问题:各个小组分别负责不同的模块,模块的独立测试能够通过,但是集成到一起就会出现很多的问题
  • 解决方案:经常性、频繁的把所有模块集成在一起进行测试,有问题尽早的发现

1.3 持续交付

  • 问题:项目的各个升级版本之间间隔太长,无法准确的
  • 解决方案:用 小版本 不断进行 快速迭代,不断收集用户反馈信息,用最快的速度改进优化

1.4 总体目标

  • 好处一:降低风险
  • 一天中进行多次的集成,并做了相应的测试,这样有利于检查缺陷
  • 了解软件的健康状况,减少假定
  • 好处二:减少重复过程
  • 编译、测试、打包、部署等固定操作必须要做,无法省略任何一个环节
  • 缺陷没有被及时发现,有可能导致后续的代码的方向错误的修复问题需要重新编写所有代码
  • 好处三:任何时间、任何地点生成可部署的软件
  • 可以在任何时间发布可以部署的软件
  • 站在客户的角度考虑:可以部署的软件是最实际的资产,利用持续集成,你可以对原代码进行一些小改动
  • 好处四:增强项目的可见性
  • 用户可以更好的看到我们的产品
  • 好处五:建立团队对开发产品的信心
  • 了解每一次构建的结果,他们知道自己对软件的改动造成了哪些影响,结果怎么样

2 持续集成工具

2.1 Jenkins

目前最流行的一款持续集成及自动化部署工具

2.2 技术组合

可以整合 GitHubSubversion

3 Java EE 项目部署方式

3.1 手动部署

每次测试人员都需要 down 下来全部的包,进行部署测试

【项目集成工具】Jenkins_java

3.2 自动化部署

【项目集成工具】Jenkins_软件测试_02

  • 开发人员将本地代码推送至 GitLab 代码库
  • 通知 Jenkins 来进行调用
  • Jenkins 通过 Git 来获取源码,通过 Maven 插件进行打包
  • 最后调用 Deploy to web container 插件来进行部署