当前位置:首页 > 芯闻号 > 动态速递
[导读]持续测试是DevOps开发流程中的重要一环。在很多已经在尝试进行DevOps开发的团队中,开发人员往往会将测试自动化等同于实施了持续测试,这种观念其实是错的。

持续测试是DevOps开发流程中的重要一环。在很多已经在尝试进行DevOps开发的团队中,开发人员往往会将测试动化等同于实施了持续测试,这种观念其实是错的。

事实上,测试自动化只是持续测试众多要素中的一部分。实施完整的持续测试,需要一个多维度的测试策略,这些策略涵盖开发过程中所有需要的测试类型——包括单元、集成、功能、探索性和自动化。持续测试还必须有一个完整的战略,将测试纳入整个CI/CD(持续集成/持续交付)的流程。

DevOps本质上来说是一系列软件开发实践的模型,强调开发人员(Dev)和运维人员(Ops)之间的沟通合作,通过自动化流程,使得软件构建、测试、交付更加快捷、频繁和可靠。这种开发模式的特点是可以把产品的每个迭代,或者每修复一个线上缺陷就立即部署到生产环境,这样一来,开发者就能够迅速从用户处获得反馈并快速做出响应。企业开发团队转向DevOps,必须在不牺牲软件产品质量的情况下,最大限度地提高交付速度来增加价值和改善用户体验,这些都需要在DevOps流程中通过实施CI/CD流程来实现,而持续测试在这其中发挥着重要的作用。

总而言之,持续测试不仅仅是在整个软件交付流程中执行自动化测试,还需要持续的业务和技术风险分析,以及整个持续集成过程的流程改进和自动化。从本质上来说,持续测试还是伴随DevOps发展出来的一种文化,它要求开发团队中的每个成员都把产品质量当作是共同的责任。此外,持续测试也是一种管理风险的方法,它可以通过提高测试流程的有效性和效率来消除测试瓶颈。

下面是由业内专家总结的持续测试策略四大关键步骤:

1、简化测试流程

简化测试流程包含三部分内容:关注业务风险、解决测试瓶颈,以及优化测试。

业务风险:

DevOps以及持续测试的最终目标都是降低业务风险,而所谓的业务风险实际上是来自于客户和组织两方面的风险组成。

客户风险涉及了解应用程序工作流程中哪个环节对客户来说最为重要,并相应地规划基于这些环节可能出现风险的测试覆盖率。

组织风险涉及了解商业环境以及产品本身的复杂性。例如,是为了抢占市场而让产品率先上市重要,还是产品本身的健康度或安全性更重要?

一旦准确评估了整体业务风险,开发团队应该将需求、应用程序组件和测试映射到这些风险中。

解决瓶颈:

在开发测试流程中,识别和缓解可能出现的瓶颈至关重要,这些瓶颈通常是阻碍最终交付产品质量和交付速度最重要的因素。这一过程通常贯穿产品需求到生产上线后的整个软件开发生命周期。

举几个例子,比如在某项待办事项中缺乏测试人员,没有在这一环节建立验收标准,没有及时解决缺陷,导致项目上线延期;比如某自动化测试套件运行时间过长,以及手动完成后期生产检查,导致效率低下。

这一步通常需要开发团队使用一些自动化工具来解决。自动化测试工具是测试人员用来提高测试效率的辅助工具。

就比如在业界家喻户晓的Selenium,它被认为是Web应用程序用户界面自动化测试的行业标准。根据“测试自动化挑战调查”显示,十分之九的测试人员在其项目中使用或曾经使用过Selenium。但为了有效地使用Selenium,用户必须具备高级编程技能,并且需要花费大量时间来构建自动化所需的自动化框架和库,这是Selenium的主要缺点,虽然可以通过Katalon Studio等集成工具解决,但其依然对测试人员的能力提出了较高的要求。

对于测试人员并不充足的团队,也可以使用一些自动化测试平台来解决测试瓶颈。例如由飞算独立研发的飞算SoFlu全自动软件工程平台,其全自动测试平台提供了测试生命周期管理、测试数据管理和精准回归测试等一站式自动化测试功能。依托平台的测试用例自动生成等特性,可以让测试人员无需编写脚本,即可快速完成自动化测试工作,提升项目上线效率。

优化测试:

如果说依靠自动化测试工具可以解决团队在DevOps流程中遇到的效率瓶颈,那么测试优化则是在持续测试流程中实施自动化策略的基础,它要求测试团队选择正确的测试方法,这些测试以最少的测试用例提供团队所需的测试覆盖率,即从策略层面提升测试的效率。

这是一个动态的、持续的过程,尤其是作为连续测试框架的一部分应用时。测试优化应该在自动化之前进行,并且必须在整个连续测试过程中持续进行。第一步通常是通过了解关键用户工作流程中涉及的所有集成来优化测试范围——包括这些应用程序中采用的技术(网络、移动、消息/API层等)。

一旦团队对测试范围有了清晰的了解,下一步就是优化测试用例。这不仅包括分析测试用例的质量和详细程度,还包括选择提供最高测试覆盖率的测试。团队的测试套件应设计为以最少的测试用例提供最大的覆盖量,以提高质量和速度。前文提到的飞算SoFlu全自动测试平台就可以通过录制工具把测试人员的操作过程记录下来,并能够自动识别相关的接口并创建相应的测试用例场景,实现自动优化测试用例。

一些团队默认「每次运行所有的测试」来保证代码覆盖率。这不但浪费资源还延长了测试周期,而且没有真正保证代码覆盖率。测试那些需要测试的部分,以节省时间和资源。可视化模型可以让各种路径被探索优化,以便只用少量的测试用例就能提供最大化的覆盖率。

2、在整个CI流程中实现自动化测试

持续测试需要在整个交付流程中实现测试自动化。测试自动化提高了部署速度并降低了持续交付中固有的风险。

但持续测试框架内的自动化不仅仅是开发和维护自动化回归测试组件。事实上,很多不间断运行自动化回归测试组件会在持续部署过程中造成瓶颈。持续测试需要一个测试自动化策略来增强而不是阻碍持续交付过程。

例如飞算SoFlu全自动测试平台提供的精准回归测试功能,该功能在项目测试时能够自动识别所有变动的接口,自动查找接口关联的所有测试用例进行精准回归测试。

自动化测试策略必须在构建过程的每一步都包含自动检查点。首先是验证单个代码片段的单元测试和验证关键特性的组件测试。基于风险的回归测试套件应根据开发者当前正在实施的功能进行定制。

在项目上线到生产环境中时,持续测试要求团队通过部署健康检查系统来确保应用正常运行,生产监控应在客户发现之前发现产品的功能和性能问题。

总而言之,在持续测试策略中,测试自动化必须设计为高效运行可利用自动化工具),同时提供可靠、一致、可重复的结果。

3、左移原则

传统测试主要集中在软件开发周期的最后,即产品发布之前的集中测试。为了迎合不断加快的交付频率,越来越多团队的测试活动开始向左右两侧移动。一般问题修复成本较高和面向企业收费的软件,一旦生产环境中出现了问题会造成比较大的损失,通常采取测试左移的方式;对于具有展示功能的软件产品,更容易在生产环境中发现问题,通常采取测试右移的方式。

测试左移是DevOps流程中常见的模式,指的是测试人员更早地参与到软件项目前期的各项活动中,在功能开发之前定义好相关的测试用例,提前发现质量问题。早期引入测试过程有助于防止缺陷,并为开发人员提供在整个开发阶段应用动态变更的灵活性。

4、对质量负责

这一步是持续测试策略的基础,它要求团队中的所有成员(包括开发、测试和运维)都需要为项目的质量负责。

业内专家认为,DevOps中质量保证不再是测试人员的专属责任,而是全体人员都要为之努力的方向。持续测试的成功实施离不开团队内部及跨团队的协作。测试人员需提前介入到开发工作中,与开发人员一起制定测试计划;开发人员可以参与配置部署;运维人员可以向自动化测试用例库填写测试用例;测试人员随时将自动化测试用例配置到持续交付链中,所有成员的共同目的都是交付高效、高质量的产品。

这种趋势也催生了很多自动化开发、测试和运维工具以降低这些领域的技术门槛。同样以飞算SoFlu全自动软件工程平台为例,该平台提供了全自动开发、全自动测试和全自动运维工具,可以管理从需求、研发、测试、部署、上线到运维的整个软件生命周期,真正实现了软件工程开发、测试、运维全流程动化。这种新兴的全自动工具降低了开发、测试和运维门槛,能够帮助任何一家企业快速构建一支DevOps开发团队。

DevOps打破了开发和运维之间的障碍,缩短了开发周期。其中,持续集成、持续测试、持续交付都是提高质量的关键催化剂,而持续测试则更具挑战性。掌握DevOps生命周期的持续测试,对于我们充分理解DevOps起着至关重要的作用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭