质量是一个系统工程,如何做好,除了参与软件工程的各方、各个环节的投入外,如何根据项目、产品、公司的不同而定制不一样的策略,以在一定的资源投入的基础上达到质量最好的效果,需要质量团队来驱动、引导、影响、实施、监控,毕竟,质量最终的负责人是QA。
质量活动存在于项目的各个环节和阶段,不管项目管理模型是传统的V模型、瀑布模型,后来的螺旋模型、增量迭代模型,还是近几年有大发展的测试驱动开发scrum,从项目写第一行代码开始到最后在线运行,不同的质量工程的手段和方法都可以用来极大的提升迭代速度和整体质量标准,当然,要看组织对相关软件质量的关注度和支持力度。
下面列出了一些软件工程化(互联网)的活动;是不是需要adopt,如何adopt,做到何种程度,如何measure效果等,根据各种因素可以一一分析。
活动 | 主要参与角色 | 适用场景 | 评判标准 |
单元测试 | Dev | build check | Coverage (LOC, class, path) |
build验证自动化测试集 | QA | build check P1 case check | pass rate business coverage |
功能测试自动化 | QA | Feature testing integration testing (Continues Integration testing phase) | business coverage code coverage |
集成测试自动化 | QA | Feature testing integration testing (Continues Integration testing phase) | business coverage code coverage |
site speed/webpage性能测试 | QA | feature testing production testing | web page metrics: weight of whole page, First byte time use persistent connectins compress cache ... |
application、api基准性能比较 | QA | feature testing continuous integration testing phase | % of metrics change |
静态代码分析 | QA/Dev | Suggested: regular check | violations |
测试环境log自动化系统 | QA/Dev | Feature testing integration testing | ranked topN old error ranked topN new error |
负载环境功能测试 | QA | integration testing | business coverage |
随意性测试、探索性测试 | QA | feature testing integration testing production testing | n/a |
在线自动化smoke测试 | QA | release | speed p1/P2 coverage |
在线功能测试 | QA/Ops | production | frequency business coverage network compatibilities IDC jump … |
在线log分析 | QA/Ops/Dev | production Real-time alert & frequent operation | P1 alert / action ranked topN old error ranked topN new error |
在线业务监控、分析系统 | QA/OpS/Dev | Production Main QoS/Business metrics monitoring | QoS metrics coverage Business metrics coverage |