架构词典:质量
质量控制,可以分为好几个阶段。包括设计、开发、测试、上线、运维等等。但就开发过程而言,主要可以从几处着手:提水平、建规则、做监控。
提水平:提升大家的水平,最简单的方法就是讲代码,让大家知道正确的代码该如何写。同时强推单元测试,资深一点的同学开始时要辛苦一点,把很多单元测试的基础搭好,确保其他同学想写测试时随时有可以模仿的对象。同时引导大家读书学习,单就开发而言,重构、单元测试的书对大家的提升效果比较明显。
建规则:代码进入生产的第一步时合并MR。合并MR要建好规则,比如必须要有 review, 代码应该包含单元测试(如果确实没有需要提交者单独备注说明)。此外,还需要避免低水平的错误进入生产环境,主要是通过CI流程来做检查,包括语言自身的报警检查,Spotbugs, Sonarlint 等工具,制定恰当的标准,凡是不通过的就不能合并。同时建立统一的 parent project,把一些限制放在 parent project,比如不允许用 fastjson 库就可以使用 Maven Enforcer Plugin 可以实现这种需求。需要对外的服务,还需要关注 CVE 漏洞,这部分可以用 org.owasp: dependency-check-maven 插件来实现。
最后一点是要对质量做持续监控,最常用的监控点是是单元测试的覆盖度的增长情况,一个健康的团队,单元测试的数量和覆盖度应该呈现一个持续稳定上升的趋势。
开发的质量控制是整个质量控制的一环,作为软件产品的生产部门,质量控制的责任也是最重的。
版权声明: 本文为 InfoQ 作者【lidaobing】的原创文章。
原文链接:【http://xie.infoq.cn/article/ec76d78b2c2e4e7576c34350a】。文章转载请联系作者。
评论