一次和一个测试管理人员交流,提了三点困惑:
1.功能测试人员对自动化测试的结果不信任
2.功能测试人员学习自动化测试周期较长
3.如何考量自动化测试的投入产出比
关于不信任问题其实在于 “眼见为真” 导致的。自动化测试的结果肯定是可信任的,但是在开始自动化测试前,应该重点考虑如何保证测试数据有效,测试系统环境稳定,测试场景的覆盖率等造成不稳定的因素,切记上面准备都没有就开展自动化测试。其次:自动化测试在其实可信任维度是高于人工测试的,但是需要有一套很好的机制保证人工测试的 “过程” 和 “结果” 的验证”。还有就是造成不信任的在于有个潜在的问题:“自动化测试找不到 bug” 而 “人工测试可以找到 bug”。其实自动化测试价值所在,主要通过自动化能力解放有经验的测试工程师的生产力,让其从重复的回归测试中解放出来,从事新测试方法和测试手段的研究。通过自动化测试解放出的生产力来间接找到更多更深层次的新 bug,将产品质量再提高一个档次。
学习一个新的领域知识无外乎几个方面:学习的人,学习人的能力,公司企业,学习的支撑平台,所以学习的周期可以概括为以下方面。
如果想缩短周期,那么第一,也是最重要的一点就是需要这个人愿意去学,所谓学习是最好的导师;第二,这个学习人的基础背景能力;第三,企业是否有相应的制度规范或者激励推广策略;第四,学习的基础平台或者材料是否简单易懂。
ROI=(自动化测试节省的时间——自动化测试投入总时间)/自动化测试投入总时间。
从上表也能看出,在自动化测试中需要更长的时间这边测试用例和脚本的编写,也需要更长的时间进行问题分析。测试执行的时间有很多的提升。所以自动化测试一定需要一个懂测试的 “人性” 平台或者框架,这个平台或者框架能够在编写用例,测试准备,问题分析上有着很好的能力帮助缩短时间。