一、认知篇
1、自动化测试的本质:接收指令输入,运行代码,得到结果并验证结果。是一种机器代替人力的方式。
2、自动化测试的价值:好+快+省
在重复性、需要人力不分时段不限次数反复投入的工作,或者在大量级、人工无法实现或者实现成本高的工作上,有着不可替代的意义。
对于软件工程而言,自动化测试的主要价值是能对代码变动提供快速反馈,达到监控质量不回退的目的。以回归测试为主、新研价值验证为辅。
总结提炼其价值:除去本身执行代码速度快之外,因为运行方式上可以并行,反馈周期非常快;相比人力成本,自动化测试只需计算机资源,所以更省;自动化测试除去回归测试可以确保质量不衰减之外,可以辅助实现代码覆盖率检测来帮助产品质量更好。
3、自动化测试的缺点:门槛高,不灵活,有持续成本投入
技术栈上:对人员能力有语言编程的要求,有入门门槛;
验证内容上:验证操纵步骤固定,期望结果需要提前给出,灵活性差,也无法解决test oracle问题,故新研验证为辅。
成本上:引入时的一次性成本大,在正式应用到项目后,编码、运行分析、维护,均存在持续成本投入;
4、自动化测试引入的时机:
总体而言,使用得当的话自动化测试利大于弊。那什么时候适合引入自动化呢,应该在产品商业模式确定、核心用户价值清晰,业务上需求变更、以及技术上开发架构变动影响小(发生的概率小&发生的模块非重点模块)的情况下,才建议考虑。
5、自动化测试发展过程及关键要点:
二、建设篇
1、自动化测试能力建设:质量与成本贯穿始终
1.1 自动化测试质量建设:针对不同研发阶段的自动化测试质量活动,设定相关的质量指标…
后续更多内容欢迎阅读:质量管理之自动化测试建设
个人原创作品,引用请指明来处,未经允许不可商用。