决策依赖人:CI代码后需要执行哪些测试任务是静态配置的或完全人工决策决定的。
流程依赖人:交付各环节流程流转依赖研发或测试人员,沟通交互成本高。
结论依赖人:流水线无风险分析能力,测试任务无0/1化结论,准入准出的风险判断依赖个人经验。
因此要实现无人值守必须要通过技术手段解决这三个依赖问题,一句话概括就是 “通过智能执行和风险评估能力,实现失败智能运维,过程自动流转,风险智能揭露,整个交付过程无需测试人员人工干预 ”。
要真正实现这个目标,首先要满足三个必要的条件:完备的测试能力、稳定的构建能力以及精准的评估能力,在这些能力的基础上,建设数据采集、风险识别、风险控制、风险决策等智能化机制,最终实现全环节的无人化。
由于篇幅所限,本文下面先重点介绍三个依赖的基础能力。
如果说完备的测试能力是实现无人值守的基础,稳定的构建能力就是实现无人值守的保障。
如果流水线构建频繁失败,就会导致在自主测试过程中,测试人员需要不停的进行失败问题的定位,修复,以及与研发人员的反复的沟通,因此稳定的构建至关重要。
如何建设的稳定的构建能力呢?其实可以用线上服务的稳定性建设作为参考,线上服务通常有研发、运维的各种稳定性及监控建设,稳定性能够达到几个9以上,但是线下服务的稳定性通常只有百分之八九十,那为什么不使用线上稳定性建设的标准来进行线下测试能力的建设呢。
因此我们以线上运维的标准,全面提升了线下构建的稳定性,主要包含以下主要工作:
基础依赖治理:流水线稳定性离不开基础依赖的稳定性,这些依赖包含机器、实例、测试代码、测试数据、第三方服务等各个方面,因此要提升稳定性首先要治理这些依赖,如机器的统一管理,测试代码和数据用线上代码的标准管理,第三方服务的SLA保障及容灾等措施。
全环节的稳定性保障:全环节即预防、发现、定位、恢复、闭环各个环节均建设对应的稳定性能力,如在预防环节,针对构建需要的环境、数据等进行监控,如出现不可用或缺失等问题提前报警,避免测试任务构建时才发现导致失败;
定位环节规范错误码,针对错误码建设自动定位机制,如果定位问题能够自动恢复即触发自愈的策略自动触发恢复手段,减少失败的人为干预。
构建数字化:通过对构建数据的数字化,实现构建的稳定性度量、刻画、建议等工作。
下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】