持续测试(Continuous Testing)

持续测试(Continuous Testing)

为了适应敏捷和DevOps软件研发模式,“持续测试”这个理念倍业界提出。持续测试是指软件持续交付流水线中的一种可随时开展且具有连续性的自动化测试流程。它基于强调全方位的测试能力,以及测试、开发和运维良好的融合自动化测试能力,但它更关注利用自动化测试能力在持续交付流水线全过程中及时、准确地给团队提供当前版本的质量和使用体验反馈,从而切实保障软件持续交付过程中的质量。它不仅需要有助于让软件交付流水线运行得更快,还需要能够以最低的代价覆盖交付所面临的业务风险,保障生产所开发的软件产品足够安全可靠。

DevOps与持续测试
在这里插入图片描述

持续测试在敏捷与DevOps实践中的定位:
持续测试在敏捷与DevOps实践中的定位

从持续测试的定义的定义可看出,持续测试是基于自动化测试能力,但更是一种融入持续交付实践的测试活动运行方式。与持续交付其他阶段的实践类似,持续测试实践最关键的特点在于“持续”二字。其特征包括以下四点:
1.全流程平滑有序:将传统瀑布模型下的测试活动分别向软件研发运维流水线的左侧和右侧进行彻底地移动,以让测试活动在覆盖软件交付流水线的全过程上没有停顿、没有阻塞。

2.准确且有效:被测系统往往很复杂,不可能做全回归测试,而是要推行精准测试,提升测试效率。

3.足够快:以快速反馈为主要导向,整个测试过程要快,一方面依赖高度自动化测试(自动化测试占比应该超过85%以上),另一方面依赖业务端到端的探索式测试。

4.高度集成:以融入持续交付流水线为载体,测试活动将伴随软件流水线的每一次流动、每一个版本而频繁发生,实现测试与持续构建、持续集成、持续部署、持续运维等。

持续测试内涵非常丰富,除了传统意义上的测试活动外,还包含“测试左移”和“测试右移”的实践。
测试左移”强调把测试活动引入到需求、设计和编码等开发环节,让测试活动与开发活动同时进行。甚至是测试在前、开发在后,即测试驱动开发,这其中典型的实践有需求评审、设计评审、单元测试、代码扫描分析与检查等。

测试右移”强调测试活动不应该随着软件上线发布而结束。相反,对于线上环境持续的测试和监控也是重要的测试活动。其中典型的“测试右移”活动有生产环境上的流量回放、全链路压测、用户体验的A/B测试等。

持续测试的价值
1.保障企业业务数字化转型可以在业务风险可控情况下推进的关键
2.保障企业数字业务创新的基石之一
3.帮助研发团队进行测试转型升级的重要抓手

实施持续测试
落地持续测试的整体框架
在这里插入图片描述

参考资料:
《持续测试白皮书》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值