欢迎您光临本站,如有问题请及时联系我们。

DevOps中,持续测试有多重要?

继我早期的“Digital Assurance”博客之后,我想分享一下我对于“DevOps 中持续测试的重要性”的一些想法,这也是“数字战略”的重要组成部分之一。

简介:Gartner将DevOps称为“基于敏捷哲学的IT服务交付方式,重点是业务成果,而不是商业思想”。加强协作,建立多功能型团队和共享应用程序生命周期终端知识有助于为客户提供优质的服务。开发、QA和运营团队之间的协作是 DevOps概念的核心,这是一种横跨人、过程和技术的综合方法。在这里QA是推动者,而不是开发和操作之间的“看门人”。

开发到运营的生命周期是一个完整的端到端过程。

图 – DevOps方法论

回馈循环是持续改进的一部分,这是DevOps的关键。它包括错误报告,功能建议,可用性,性能和使用情况监控和仪器。

DevOps测量的关键指标:

前置部署时间

部署成功率

缺陷修复时间

不进行持续测试,DevOps是否存在?

DevOps是持续集成和交付的组合,持续测试是持续交付和DevOps的主干。如果不知道应用程序的执行情况,DevOps将失去意义。

为什么进行持续测试?

持续测试的DevOps实践将使QA与开发、操作流程同步进行,以实现实时操作的质量部署,更容易在整个交付和运营生命周期中采用敏捷&精简实践,以更低的成本和持续的业务反馈提供更全面的覆盖。

几年前,敏捷风靡一时且发展迅速,但由于Ops和QA人员缺乏实践经验和在频繁构建中对最小覆盖的考虑不足而使得他们不得不奋力追赶。敏捷开发的广泛使用加速了开发,而软件测试的落后成为了瓶颈。

DevOps中的持续测试不是放慢开发速度,而是作为改进流程的一个系统化的方法。在将代码块添加到端口汇聚之前开始测试,开发人员进行预检,以确保它不会破坏端口汇聚。不同的开发人员进行持续续集成和代码提交的过程中,集成测试是用来验证组装后的系统或子系统。软件发布前,持续测试在夜间和周末自动回归运行,可以在端口汇聚和分支机构找到问题。测试结果是工作进展的主要衡量标准,DevOps基础设施成熟度也体现在测试成熟度的区别中。持续测试框架可以是基于行为驱动开发或基于模型的测试框架,并且可以使用任何测试工具。 QA则将正确的质量构建推送到操作环境中。

没有单一的DevOps工具。我们需要根据项目细节选择和实现正确的工具。

结论:

显而易见,没有零干涉/回归/验收测试过程的持续测试,DevOps就无法实现。自动化测试包能够生成自身的测试数据,构建安装,环境配置,测试执行,日志生成和发布测试报告。

尽管如此,大家都知道并不是所有事情都可以完全自动测试化,因此对于工作流程复杂的测试用例和用户界面,仍会有部分人工测试。从持续监控的角度来看,QA自动化测试脚本将成为实时生产环境中持续运行软件版本的关键交付工具。


来源:本文由E8运维原创撰写,欢迎分享本文,转载请保留出处和链接!