Bootstrap

服务端质量保证体系(三) CI原子能力建设

在确定了整体研发流程规范及流水线的标准化建设后,我们针对于服务端质量保证建设相当于有了行动指南及适用于各种场景的线,而接下来要做的就是在各种场景线当中,增加各种各样CI原子,这样才能真正将线变为珍珠串,发挥出真正价值。CI原子能力建设主要从:RD研发阶段、RD合入代码阶段、部署主干流水线阶段、上线阶段、日常任务阶段进行介绍。

一、研发阶段

单元测试

接口测试

二、合码阶段

单元覆盖率卡点

  • 覆盖率或测试覆盖率是用来衡量单元测试对功能代码的测试情况,通过统计单元测试中对功能代码中行、分支、类等模拟场景数量,量化说明测试充分度。

静态代码检查

  • 静态代码检查是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序正确性。

三、发布主干阶段

白盒安全扫描

  • 漏洞是在软件、协议的具体实现或系统安全策略上存在的缺陷,可以使攻击者能够在未授权的情况下访问或破坏系统。而漏洞扫描是指基于漏洞数据库,通过扫描等手段对指定的远程或者本地计算机系统的安全脆弱性进行检测,发现可利用的漏洞的一种安全检测(渗透攻击)行为。接口测试

接口测试

  • 与研发自测阶段进行接口测试相比,此阶段更加注重原有Case的回归,保证已有功能的稳定性。

代码覆盖率

四、上线阶段

观察时长控制

  • 需要小流量->单机房->全流量观察的方式上线,并保证观察时间。可根据服务树配置小流量的最小观察时长。

npm版本diff

  • 保证前端依赖代码库测试版本和上线版本一致,防止出现‘测试完成没有问题,上线使用其他版本导致线上事故’。

五、日常任务

Coverity扫描

  • Coverity是唯一位列IDC前10名软件质量工具供应商的静态分析工具厂商,被第三方权威调查机构VDC评为静态源代码分析领域的领导者,市场占有率处于绝对领先地位。

  • 优点:可以检测二进制文件,分析能力较强

自动创建流水线

  • 在批量接入Devops后,随着新服务不断增加,服务接入Devops比率在不断减少,为降低业务接入流水线的使用成本,新增自动创建流水线节点。建立完成后将信息lark通知到对应同学

通过研发规范制定、研发流水线标准化、CI原子能力建设,将整体流程和各阶段能力已经部署打通,而能否真正是有价值的,还需要落地到业务当中,度量统计对效能和质量保障的提升促进情况,这就涉及到度量指标体系建设,我们将在下一篇来跟大家详细介绍。