持续集成
基础概念
快速且高频率的自动构建项目的所有源码,并为项目源码提供丰富的反馈信息。
持续集成需要引入额外的硬件设备,特别是对于持续集成服务器来说,性能越高,集成的速度就越快,反馈的速度也就越快。持续集成还要求开发者使用各种工具,如源码控制工具、自动化构建工具、自动化测试工具、持续集成软件等。
持续集成的好处
尽早暴露问题:越早的暴露问题,修复问题代码的成本就越低,持续集成高频率地编译、测试、审查、部署项目代码,能够快速的发现问题并及时反馈。
减少重复操作:持续集成是完全自动化的,这就避免了大量的手工劳动,开发人员不再需要手工的去签出源码,一步步地编译、测试、审查、部署。
简化项目发布:每日高频率的集成保证了项目随时都是可以部署运行的,如果没有持续集成,项目发布之前不得不手动集成,然后花大量时间修复集成问题。
建立团队信心:一个优良的持续集成环境能让团队随时对项目的状态保持信心,因为项目的大部分问题区域已经由持续集成环境覆盖了。
完整集成包含的步骤
持续编译:所有正式的源代码都应该提交到源码控制系统中,持续集成服务器按一定频率检查源码控制系统,如果有新的代码,就控制一次集成,旧的已编译的字节码应当全部清除,然后服务器编译所有最新的源码。
持续数据库集成:每次发现新的SQL脚本,就应该清除集成环境的数据库,重新创建表结构,并填入预备的数据。
集成测试:除了单元测试,有的项目还会包含一些依赖外部环境的集成测试,所有这些测试都应该在集成的时候运行,并且在发生问题的时候能产生具体报告。
持续审查:持续集成可以使用诸如(PMD)这些工具来生成各类报告,当审查发现问题的时候,可以给开发人员反馈警告信息。
持续部署:有些问题只有在部署之后才能发现,它们往往是具体容器或者环境相关的,自动化部署能够帮助我们尽快发现这类问题。
持续反馈:将继承失败报告发送给这次集成相关的代码提交者,项目负责人收到所有失败报告信息。
文章仅供参考,代码并不是全正确,只需要知道在对应的情况,可以做对应的处理,代码是变化的,我相信原理不变