CI(持续集成)/CD(持续部署)

  • 什么是CI(持续集成)

持续集成(ContinousIntergration,CI)是一种软件开发实践,即团队开发成员经常集成它们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的编译、发布、自动化回归测试来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。持续集成是为了持续交付。 没有单元测试的持续集成基本无意义。

  • 什么是CD(持续部署)

持续部署(ContinousDelivery,CD)在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境中。比如,我们完成单元测试后,可以把代码部署到测试环境中,交付给质量团队或者用户,以供评审。如果评审通过, 代码就进入生产阶段。

  • 常规的测试过程:开发送测一个版本——>测试人员从配置库下载版本——>编译版本——>部署到测试环境——>进行冒烟测试——>进行功能测试。 而这些过程完全可以由CI/CD来替代。
  • DevOps

DevOps是一个完整的面向IT运维的工作流,以IT自动化以及CI、CD为基础,来优化程序开发、测试、系统运维等所有环节。

DevOps实际是一种文化上的变迁,代表了开发、运维、测试等环节之间的协作,因此DevOps工具是非常多种多样的,甚至可以由多种工具组成一个完整的DevOps工具链。此类工具可以应用于一种或多种类别,并可体现出软 件开发和交付过程的不同阶段:

①编码:代码开发和审阅,版本控制工具、代码合并工具

②构建:持续集成工具、构建状态统计工具

③测试:通过测试和结果确定绩效的工具

④打包:成品仓库、应用程序部署前暂存

⑤发布:变更管理、发布审批、发布自动化

⑥配置:基础架构配置和部署,基础架构即代码工具

⑦监视:应用程序性能监视、最终用户体验

你可能感兴趣的:(软件测试)