三、什么样的情况适合自动化测试
自动化测试之所以能在很多大公司实施起来,就是有它适合自动化测试的特点和高的投资回报率。
● 产品型项目:每个项目只改进少量的功能,但每个项目必须反反复复的测试那些没有改动过的功能。这部分测试完全可以让自动化测试来承担,同时可以把新加入的功能的测试也慢慢地加入到自动化测试当中。
● 增量式开发、持续集成项目:由于这种开发模式是频繁的发布新版本进行测试,也就需要自动化测试来频繁的测试,以便把人从中解脱出来测试新的功能。
● 回归测试:回归测试是自动化测试的强项,它能够很好的确保你是否引入了新的缺陷,老的缺陷是否修改过来了。
● 多次重复、机械性动作:自动化测试最喜欢测试:多次重复、机械性动作,这样的测试对它来说从不会失败。比如要向系统输入大量的相似数据来测试压力和报表。
● 需要频繁运行测试:在一个项目中需要频繁的运行测试,测试周期按天算,就能最大限度的利用测试脚本,提高工作效率。
四、如何实施自动化测试
1、自动化测试决定
自动化存在着局限性。克服不正确的自动测试期望,必须针对测试项目的具体情况,确定什么时候,对什么进行自动化。如果对不适合自动化的测试,实施自动化,不但耗费了大量资源,而且得不到相应的回报。要记住:自动测试不可能完全替代手动测试。
2、测试工具获取
实现自动化测试,测试工具的选择很重要,而目前还没有一个单一的测试工具能用来完成所有的测试需求。测试工具品种不一,功能性能各异。对自动测试工具的适当选择,很大程度上决定了该工具能否获得相应的投资回报。
3、自动化测试引入
首先需要测试过程分析,从而确定适用的技术环境以及自动工具可支持的各种测试。其次,将潜在的测试工具和实用程序映射到测试需求中,验证测试工具是否与应用及环境兼容。
4、制定测试计划
测试计划是测试过程中最重要的活动,包括风险评估、鉴别和确定测试需求的优先级,估计测试资源的需求量,开发测试项目计划以及给测试小组成员分配测试职责等。
5、自动测试的设计
测试设计包括经过测试需求分析后,定义测试活动模型(确定测试所使用的测试技术),定义测试体系结构,完成测试程序的定义与映射(建立测试程序与测试需求之间的联系),自动/手动测试映射(确定哪些测试使用自动测试),以及测试数据映射。