1. 姓 名:
    电 话:
       快 速
       留 言:
    验证码:
北大青鸟上海 >> 新闻动态 >> 动态新闻  >> 正文

上海北大青鸟 自动化测试能取代手工测试?

信息来源:http://www.itbenet.com/ 发布人:北大青鸟 发布时间:2016-11-23 09:07:14
                                                        自动化测试能取代手工测试?
       手工测试和自动化测试都是软件质量保障的重要途径,如何正确的看待这两种测试方式,更好的使两者相互结合,下面总结了自动化测试和手工测试的优点和缺点,列举了各自的适用范围,并分析了自动化测试无法最终取代手工测试的原因。

1.    自动化测试是万能的吗?

自动化测试有众多的优点,例如:快速、全面、可靠、可编程、可重复使用、可重用。自动化测试产品和解决方案的潜在客户经常会以下面的思考方式设想自动化测试:

快速:测试脚本执行比人工执行要快得多,和手工测试相比,计算机可以不知疲惫,一天24小时不休息的执行测试

全面:所有的测试都能够实现自动化,你可以构建一个覆盖应用程序每一个功能的测试包

可靠:测试脚本在运行时执行相同的操作,减少了人为的错误,排除了人测试的不确定性,使测试结果更加客观。

可编程:可以编写复杂的测试脚本来找出应用程序中隐藏的信息

可重复:重复执行相同操作,计算机软件轻松完成

可重用:你可以重复使用测试脚本来测试应用程序的不同版本,即使用户界面发生了变更也可以用

这样看来,完全可以用自动化测试取代手工测试吗?答案是否定的。自动化测试虽然具有以上优点,但这些优点是在一定的约束条件下存在的。

2.    手工测试会被自动化测试取代吗?
       自动化测试策略及工具的实现具有强大功能、高效等使我们受益,但只是测试人员工具箱里的一件利器,它无法取代测试人员的地位。

自动测试生来就是用脚本写成的,而不是探索性的,它需要我们设定上下文后才能在一定的范围内为特定的目的而执行。即便我们使用的是一个引入了所有可能情况的自动测试组合,我们的测试也只能在它们覆盖的地方游刃有余,但对于其它没有涵盖到的地方,它们就鞭长莫及了。如果出现了哪些没有预料到的情况,那么它们很可能就失效了,而且即使它们能够从这些情况中恢复过来,它们还是无法停止正在处理的任务并检查没有预料到的情况。很显而易见将所有测试都自动化是不切实际的。

测试是依靠知识和智慧作为生产资料的一项工作,这要求测试人员具备较强的业务知识、较高的计算机操作能力和深厚的测试理论基础。通过设计科学合理的测试用例,正确的执行用例、准确的分析测试结果,才可能得到客观的测试结论。

手工测试的最大特点是具有探索性,可以依据测试工作的进展适时调整测试策略,尤其是在需要进行人为主观判断和主观感觉来对被测试对象做出评价时,则手工测试将是最理想的选择。

手工测试有其不可替代的地方,因为人具有很强的判断能力,而工具没有。手工测试不可替代的地方至少包括以下几点。

测试用例的设计:测试人员的经验和对错误的判断能力是工具不可替代的。

界面和用户体验测试:人类的审美观和心理体验是工具不可模拟的。

正确性的检查:人们对是非的判断、逻辑推理能力是工具不具备的。

3.  何时用自动化测试?

对于一些基本的、逻辑性不强的操作,可以使用自动化测试工具。应该说,现在性能测试、压力测试等方面,自动化测试有其不可替代的优势。它可以用简单的脚本,实现大量的重复的操作。从而通过对测试结果的分析,得出结论,这样不仅节省了大量的人力和物力,而且使测试的结果更准确。对于一些逻辑性很强的操作,如果自动化测试不是很健全的话,不建议使用。因为这需要比较复杂的脚本语言,不可避免的增加了由于测试脚本的缺陷所造成测试结果错误的误差。这时就需要手动测试了。采用手工回归测试,不但代价昂贵,而且容易出错。自动化测试可以减少但不能消除这种工作的工作量。测试者可以有更多的时间去从事更有意义的测试。

4.  何时用手工测试?

手工测试更适合测试业务逻辑,因为测试人员学习业务后执行测试要比交给自动化容易得多。手工测试者最适合成为领域专家,依据他们自身对业务的理解去评价复杂的业务逻辑实现的正误,通过观察分析细微的逻辑问题找到问题的症结。

另外,从经济性的解度考虑,执行自动化测试需要事先花费大量的时间和精力来初始化脚本,完善自动化测试的上下文。这对于某些情况是不适合的,比如说在某些有时间要求的项目中,初始化自动化测试脚本所需时间是不可接受的。在这样的情况下手工测试具有更强的灵活性。

总结起来手工测试适用的情况如下:界面测试,用户体验测试,探索性测试,周期短并且一次性的项目,进度非常紧张的项目,需求非常不稳定的项目界面尚未确写,使用了很多第三方或自定义控件的项目等。