连载:(五)软件测试技术——手工测试与自动化测试
手工测试和 自动化测试 也是很多 测试人员 争相讨论的两种 测试方法 。有人对自动化测试趋之若鹜,也有人对自动化测试嗤之以鼻。在做出如何看待自动化测试的决定之前,首先要对自动化测试有一个清晰的认识。 自动化测试是对手工测试的一种补充,自动化测试不
手工测试和
自动化测试也是很多
测试人员争相讨论的两种
测试方法。有人对自动化测试趋之若鹜,也有人对自动化测试嗤之以鼻。在做出如何看待自动化测试的决定之前,首先要对自动化测试有一个清晰的认识。
自动化测试是对手工测试的一种补充,自动化测试不可能完全替代手工测试,因为很多数据的正确性、界面是否美观、业务逻辑的满足程度等都离不开测试人员的人工判断。而仅仅依赖手工测试的话,则会让测试过于低效,尤其是
回归测试的重复工作量对测试人员造成了巨大的压力。
因此,可以得出一个结论:手工测试与自动化测试与一个都不能少,关键是在合适的地方使用合适的测试手段。
1.自动化测试
自动化测试是软件测试发展的一个必然趋势。随着软件技术的不断发展,
测试工具也得到长足的发展,人们开始利用测试工具来帮助自己做一些重复性的工作。
软件测试的一个显著特点是重复性,重复让人产生厌倦的心理,重复使工作量倍增,因此人们想到用工具来解决重复的问题。
很多人一听到自动化测试就联想到基于GUI录制回放的自动化
功能测试工具,如
QTP、
Robot、
WinRunner等。实际上
自动化测试技术的含义非常广泛,任何帮助流程的自动流转、替换手工的动作、解决重复性问题以及大批量产生内容,从而帮助测试人员进行测试工作的相关技术或工具的使用都叫自动化测试技术。例如,一些
测试管理工具能帮助测试人员自动地统计测试结果并产生测试报告,编写一些
SQL语句插入大量数据到某个表中,编写脚本让版本编译自动进行,利用多线程技术模拟并发请求,利用工具自动记录和监视程序的行为以及产生的数据,利用工具自动执行界面上的鼠标单击和键盘输入等。
注意:自动化测试的目的是帮助测试,它可能部分地替代手工测试,但是不可能完全替代测试。
2.手工测试
手工测试有其不可替代的地方,因为人具有很强的判断能力,而工具没有。手工测试不可替代的地方至少包括以下几点。
测试用例的设计:测试人员的经验和对错误的判断能力是工具不可替代的。
界面和用户体验测试:人类的审美观和心理体验是工具不可模拟的。
正确性的检查:人们对是非的判断、逻辑推理能力是工具不具备的。
自动化测试有很强的优势,借助计算机的计算能力,可以重复地、不知疲倦地运行,对于数据能进行精确的、大批量的比较,而且不会出错。由此看来,手工测试和自动化测试是一个都不能少,而且应该有机地结合,充分利用各自的优势,为测试人员查找Bug提供各种方法和手段。
注意:自动化测试的应用是一个需要详细考虑的问题,尤其是自动化测试工具的引入问题。
不要为了应用工具而进行自动化测试,工具是为了自动化测试而产生的,有时候工具可能完全失效,因为工具不可能满足和适应所有软件的需求,此时,就需要测试人员自己动手编写程序或脚本来实现自动化了。
原文转自:http://www.ltesting.net