《白瀚雄-郑欣-持续测试演讲.pdf》由会员分享,可在线阅读,更多相关《白瀚雄-郑欣-持续测试演讲.pdf(27页珍藏版)》请在三个皮匠报告上搜索。
1、DevOpsDevOps持续测试持续测试标准驱动企业交付质量飞跃标准驱动企业交付质量飞跃中国信息通信研究院 云计算与大数据研究所 白瀚雄DevOps时代社区 郑欣传统测试vs持续测试DevOps持续测试标准介绍测试现状与标准要求总结传统测试vs持续测试外界看测试团队的未解之谜外界看测试团队的未解之谜效能谜团效能谜团团队进行了长期的自动化建设投入,但是并没有在效能方面获得显著的收益01缺陷谜团缺陷谜团团队依靠自动化脚本发现的问题并不多,大量问题的发现还是依赖人工操作02质量谜团质量谜团测试人员越来越多,但是线上质量并没有越来越好03管理谜团管理谜团工作流程中仍然无法规避过多的人工卡点,人工智慧和
2、经验无法复用。宝贵资产随人员流动而流失04偏见谜团偏见谜团人们常常认为,质量是测试部门的事情,和其他角色无关05发展谜团发展谜团测试组织、人员、流程、技术该向何方发展?06经验和知识依托于个人,没有成为有价值的组织能力01.01.经验和知识经验和知识测试过程难以度量,需求覆盖率、代码覆盖率,缺陷密度等指标无法得到准确数据04.04.测试度量测试度量测试流程不连贯,过多的人工卡点造成流程效率低下02.02.测试流程测试流程工具平台能力无法集中赋能,有重复建设和局部能力支撑不足的情况05.05.工具平台工具平台变更应对能力弱,用更多的全量回归防止质量回退,耗时耗力03.03.变更应对变更应对受制于
3、上下游局限,无法有效通过测试左右移,完成有效的全阶段测试工作06.06.测试左右移测试左右移测试团队自身的困惑DevOps时代,软件全生命周期中最影响产品交付的环节就是软件测试,测试是对交付效率和质量的重要保障。据调查显示,超6成项目认为测试是影响交付的最重要环节之一。32%16%22%63%21%23%30%0%10%20%30%40%50%60%70%开发编码单元测试持续构建集成测试持续集成部署发布持续改进 影响产品交付的主要软件研发环节来自:敏捷测试白皮书(2020)测试不仅能发现项目本身潜在的风险,对于交付的风险也逐渐被测试人员和项目负责人发现,测试对于交付的风险类型包括对于交付时间、
4、交付质量、业务安全的风险。识别测试风险,控制测试风险成为了测试人员另一项主要工作。测试主要是在效率和质量控制方面影响交付。据DevOps现状调查报告调研,仍有52%以上的项目在测试阶段用时接近或超过一半的迭代时间。测试整体风险79%79%测试时间风险70%70%测试质量风险48%48%测试安全风险41%41%当前,已经有接近8成的测试人员意识到测试的风险,7成测试人员能够主动识别的测试风险是时间风险,即测试时间影响交付的效率。来自:中国DevOps现状调查报告(2022)传统测试中,测试从开发提测后开始,缺陷从集成阶段被发现和修复。间隔较长的反馈周期,造成系统修复成本居高不下。传统测试阻碍系统
5、修复成本的下降传统测试导致缺陷集中爆发、发现较晚传统测试中,测试阶段通常发生在开发阶段后,所以缺陷出现较晚,在集成阶段集中爆发。这还导致产品缺陷随着迭代而大幅度波动,这导致缺陷总是集中爆发,集中修复,无法实现缺陷预防的。软件研发相关的测试活动发展至今,经历了三个主要阶段:发展阶段发展阶段:上世纪80年代到本世纪初,以瀑布模式瀑布模式为主 系统和集成测试耗费了大量时间和成本 以手工测试手工测试为主 敏捷阶段敏捷阶段:本世纪第一个十年,研发模式向敏捷敏捷模式模式转型 测试分层测试分层金字塔金字塔出现 自动化自动化测试测试比例不断提高 DevOpsDevOps阶段阶段:最近10年,DevOpsDev
6、Ops思想思想的不断发展和传播 与持续交付流水线持续交付流水线相融合 覆盖软件全生命周期的持续测试闭环1982-2000s1982-2000s2000s-2010s2000s-2010s2010s-2010s-“推动科技管理敏捷转型。建立能够快速响应建立能够快速响应需求的需求的敏捷研发运维体系敏捷研发运维体系,积极引入,积极引入研发研发运维一体化工具运维一体化工具,建设企业级一站式研发协同平台。建立适应”敏态”与”稳态”的全周期线上交付管理流程,完善数字化交付管理体系。通过精益生产管理方法,提高对大规模科技队伍和复杂技术工程的管理能力。“2022年1月 中国银保监会关于银行业保险业数字化转型的