自动化测试绝不能代替手工测试,它只是手工测试的补充。对于那种不稳定软件的测试,开发周期很短的软件,一次性的软件等不适合用自动化测试。自动化测试是使用工具进行测试,工具本身并没有想象力和灵活性,根据报道,自动化测试只能发现15的缺陷,而手工测试可以发现85的缺陷。合理的运用自动化测试可以大大提高工作效率,反之则会是无休止的噩梦。无论测试自动化多么强大,现阶断,仍然是以手工测试为主。
4自动化测试的优势与不足
软件测试中,手工测试不够全面和彻底,因为它花费了很多时间。代码在修改或添加之后,运行预定义的人工测试集来保证修改不会产生新的问题。人工测试花费的时间越来越多,并给开发者带来挫折感,打击他们执行测试的积极性。而且,测试的工作量使得开发者不愿意改进或优化现有的代码。
当开发者测试他们自己的代码时,他们总是不愿意执行最苛刻的测试用例,因此就导致了最有可能出错之处也是最不可能被全面测试到这样的情形。
自动化测试无需人工干预就可以完成,它们缩短了开发过程。而且由于自动化测试可以简单快速的发现修改的代码是否能有效地运行,因此也就鼓励开发者优化和改进现有的代码。
测试自动化往往对测试人员的技术水平要求很高,测试人员必须充分理解自动化测试,但是,自动化测试不利于测试人员积累测试经验。
不要强行在测试的每个部分都采用自动化方式,寻找能够带来最大回报的部分,部分的采用自动化测试是最好的方法。可以采用手动确认测试和自动化测试相结合的方法。
5结论
任何工作的开展并非一朝一夕,新技术的开展将需要投入大量人力物力,而自动化测试就是我们测试工程师必须要坚持的一个长期的发展方向。为了不至于做事只做表面,建议每个测试团队中都必须要有专人去负责推动自动化工作的开展。还必须有专人负责维护脚本,规范脚本,甚至可以引入配置管理工具来统一管理脚本和把经验文档化。只有这样我们的测试财富才会从中不断积累,只有这样自动化测试才能走得更远。
参考文献:
[1] 《软件工程与软件测试自动化教程》,张克东,电子工业出版社
[2]《软件工程导论》,张藩,清华大学出版社
[3]《软件测试自动化》,DanielJ.Mosley,BruceA.Posey,机械工业出版社