如何保障项目/软件/产品的质量

质量保障伴随着软件的整个生命周期,QA 更需要从质量方面去把控软件测试,在软件测试阶段的各个环节制定完善的标准和流程规范,整个团队执行

产品

1) 提出产品需求,进行需求评审
2) 产品的需求尽早锁定,减少需求变更次数,避免需求的变动导致开发和测试返工

开发

3) 开发方案设计,编码规范,开发模块设计评审
4) 单元测试:大厂要求的较多,中小公司由于软件迭代快、单元测试耗时,一般不太注重
5) code diff:测试和开发参与,提前发现代码问题,梳理改动点
6) 准入测试(冒烟测试):提测版本需通过准入测试用例,方可提测,否则打回开发,测试、开发和产品三方一起参与验收。

测试

7) 需求评审、高质量的测试用例、用例评审
8) 高质量高效率的测试执行
9) sonar 扫描:代码质量检查工具,预防一些代码隐患
10) 构建测试金字塔,单元测试,集成测试,自动化测试,探索式测试
11) 代码覆盖率体系(jacoco):了解手工/自动化执行的覆盖率
12) 线上发布:code review,确定发布顺序和发布依赖,灰度测试,观察线上的日志和监控,线上验证
13) 线上问题复盘:总结问题,看看问题发生在哪个环节,制定改进方案

最后

做好测试数据收集,如申请测试版本数,版本无效数量,分月统计,无效版本的原因,一段时间同相关人员拉通汇报,制定流程改善。流程真的很重要,用数字说话,建立度量系统;
时刻倡导质量不是测试出来的,是全流程的质量,是设计出来的。从需求阶段、代码开发、测试、验收上线是一体的,质量出现问题,大家一荣俱荣,一损俱损的观念;

如果是 Leader 或者是组长的职责,了解自己团队成员的能力,合理分配岗位,如技术能力强的测试性能、驱动、单元测试等提高测试开发等技术能力,提升团队技能,沟通能力强的对接产品、开发提高测试沟通、执行和推动能力;
测试参与设计以及相关的需求评审,开发模块设计评审,提前提出意见以及设计更高的理解需求,设计更高质量的用例,并能够对模糊的地带提前达成一致;
根据问题的现象制定相关机制、流程、标准并在部门以及公司内部进行推广,不能只抛出问你题,同时需要思考和提出解决方案,才能提高自己;
努力提升技术,帮助团队和自身成长,应对开发的时候更有说服力,提高在公司的存在感;

测试质量和测试效率看起来都跟测试有关,但是不仅仅是测试的问题,只有各个环节打通了,才能有更好的质量和更高的效率。


↙↙↙阅读原文可查看相关链接,并与作者交流