作为一名测试人员,想必大家都对自动化测试有或多或少的了解,“自动化”与“性能”作为测试行业中相对“高深”的技术,很多人都希望掌握。但是我觉得在学习自动化测试或者使用自动化测试之前,我们有必要去考虑一下,什么样的项目适合自动化测试,以免在不适合自动化的项目中浪费人力和时间,又收效甚微。
- 任务测试明确,不会频繁变动
- 每日构建后的测试验证
- 比较频繁的回归测试
- 软件系统界面稳定,变动少
- 需要在多平台上运行的相同测试用例、组合遍历型的测试,大量的重复任务
- 软件维护周期长
- 项目进度压力不大
- 被测软件系统开发较为规范,能够保证系统的可测试性
- 具备大量的自动化测试平台
- 测试人员具备一定的编程能力
当然,并非以上10条都具备的情况下才能开展自动化测试工作,一般满足以下三个条件就可以对项目开展自动化测试。
- 需求变动不频繁
自动化测试脚本变化的大小与频率决定了自动化测试的维护成本。如果团建需求变动过于频繁,那么测试人员就需要根据变动的需求来不断地更新自动化测试用例,从而适应新的功能。而脚本的维护本身就是一个开发代码的过程,需要扩展、修改、调试,有时还需要对架构做出调整。如果所花费的维护成本高于利用其节省的测试成本,那么自动化测试就失去了他的价值与意义。
一种折中的做法就是先对系统中相对稳定的模块与功能进行自动化测试,变动较大的地方进行手工测试。 - 项目周期较长
由于自动化测试需求的确定、自动化框架的设计、脚本的开发与调试都需要一定的时间,而这个过程本身就是一个软件的开发过程,如果项目周期比较紧张,没有足够的时间去支持这样一个过程的话,就不要进行自动化测试。 - 自动化脚本可以重复使用
自动化测试脚本的重复使用要从三个方面来考虑:
1.所测试的项目之间是否存在有很大的差异性(如C/S系统架构与B/S系统架构的差异)
2.所选择的测试技术和工具是否适应这种差异
3.测试人员是否有能力设计开发出适应这种差异的自动化测试框架