论手工测试与自动化测试的优缺点

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

论手工测试与自动化测试的优缺点摘要

近年来,软件自动化测试取得了长足的发展,逐步得到应用与普及,包括服务和外包软件企业在内的各个软件企业纷纷“上马”自动化测试项目。自动化功能、性能测试工具和测试管理系统在各自的软件测试领域发挥着越来越出色的作用,成为软件测试过程中不可缺少的一个重要组成部分,是每个测试团队需要认真选择和合理应用的一项重要内容。

软件自动化测试是软件测试的发展方向。但是,在目前诸多软件测试的环境下,如果盲目的追求自动化测试,则可能导致软件测试失败,所以软件测试应权衡工测试和软件测试的利弊。

关键字:手工测试、自动化测试、区别、发展

手工测试与自动测试是很多人员争相讨论的两种方法,有人喜欢手工测试,也有人倾向自动化测试。手动测试,顾名思义就是人为的手动的测试,而自动化测试则是利用工具来测试。

大家都知道,软件测试的一个显著特性,那就是重复。而重复就容易让人产生厌烦,尤其是大量的工作量,因此人工测试容易出错,而且效率不高。自动化测试则能很好的解决这个问题,自动化测试工具能弥补手工测试的精确性,并且效率也要高得多。

当前,很多企业或管理者期望借助软件测试自动化作为催化剂,提高效率、提高质量,同时,节省开支。甚至有些企业希望实施自动化测试后,就能够给企业带来效益。

在此,可以肯定的是自动化测试已经在很多领域成功实施,也有很多成功案例给了企业希望,并且这些企业成功实施自动化测试后,确实节省了相当可观的费用。而不幸的是,也有很多失败的案例,即使在看到光鲜的成功案例背后,也有失望与失败的过程。身边也有很多企业不止一次尝到了自动化测试失败的滋味。花巨资购买自动化软件,被搁置,努力化为了泡影。失败的结果不仅仅造成了人力、物力的损失,更是直接给公司带来了经济上的损失。

测试自动化实施前期需要考虑很多因素,人力、物力、财力都是需要认真考虑与规划的。自动化测试在整个测试周期中何时开展,哪些测试工作可以由自动化测试替代,这些都需要在开始部署自动化测试前,认真的思考。影响自动化测试效率的因素,不单单是大家看到可量化的测试工作,还有许多无形的因素影响着自动化测试,如测试组织的部署等。因此,在真正实施前一定要认真规划和考虑自动化测试实施方案。

自动化测试的实施过程,完全不同于手动测试。自动化测试用例与手工测试用例也大不相同。自动化测试实施过程中,需要不断的开发与维护脚本,因此对测试人员能力有很高的要求。

自动化测试实施前,需要认真分析与规划测试方案,计算自动化测试的成本。自动化测试成本包括以下几方面:

软件成本:自动化软件产品购买的费用;

培训成本:自动化测试工程师培训费用;

人力成本:自动化测试用例和测试脚本的编写的人力成本。

只有合理的规划自动化成本,站在全局角度考虑自动化的成本与收益,方可增加自动化方案成功实施的可能性。

但是自动化测试是途径,不是目的。

手工测试和自动化测试都只是测试的方法而已,使用哪一种方法不仅要看软件测试人员的能力,还要看项目规模,客户需求,公司能力等等。

所谓高手,乃是能屈能伸,要很好拿捏使用自动化与否,用多大量这个度。自动化测试是不是测试人员发展的顶峰,或者说什么是顶峰,我也说不好。

话说来到正题上来。所谓技术含量,这个本来就很难界定。从单纯的“技术”角度上来讲,手工测试确实是没什么“技术含量”的,脑力劳动加体力劳动,没看到技术的影子在里面。

想必支持正方观点的人大多是做测试的人,因为自尊心或者其他的原因,会把技术含量定义成更广泛的面——能力。所以支持正方观点的人是在说手工测试也是需要能力的,因为对测试悟得越透,经验越多,测试也就会做得越好,取得成效越好,从这个角度上讲,测试是很需要能力的,这种能力我们也可以理解成“技术含量”,这样,手工测试要做好自然也是需要技术含量的。

再来揣测一下支持反方观点的人可能的想法。除了上面提到的“技术含量”理解上的偏差可能导致反方意见之外,还有一种可能是反方认为手工测试好入门,所以很简单,所以哪儿来的“技术含量”。这其实是对于技术的误解,不是说一个东西很好学会它就简单。试想

所有人生下来都会吃,可是能做到美食家的有几个,这里吃也显得是一种技术含量;大部分人生下来就会叫出声音,可是歌唱的是比谁唱得好;手工测试入门是简单,看起来不就是点点么,但是要点出门道,还是很考验能力的。

总结一下,我的观点是手工测试肯定有技术含量,自动化测试也有技术含量,但是怎么拿捏好手工测试和自动化测试的度也很有技术含量。废话一句:真正的技术含量体现在你能做成什么样,而不是别人说她有它就有,说它没有它就没有的。

自动化测试的优点是能够很快、很广泛地查找缺陷,同时可以做很多重复性的工作,在回归测试阶段,我们可以利用QuickTestProfessional

自动化功能测试工具进行,而无须大量的软件测试人员手动的再次执行测试用例,极大的提高了工作效率。有时候我们常常需要做一种压力测试,需要几万甚至几十万个用户同时访问某个站点,以保证网站的服务器不会出现死机或崩溃的现象。一般来说,要几万人同时打开一个网不现实的,就算能够找到那么多的测试者,成本也很高。但是,利用测试工具,比如LoadRunner,就可以非常容易地做到,并且测试工具还可以自动判断浏览结果是否正确。

自动化测试的缺点也很明显,它们只能检查一些比较主要的问题,如崩溃、死机,但是却无法发现一些一般的日常错误,这些错误通过人眼很容易找到,但机器却往往找不到。另外,在自动测试中编

写测试脚本工作量也很大,有时候该工作量甚至超过了手动测试的时间。而手工测试不可被替代的地方则包括这几点:测试用例的设计(测试人员的经验和对错误的猜测能力是工具不可替代的);界面和用户体验测试(人类的审美和心理体验是工具不可替代的);正确性的检查(人们对是非的判断和逻辑推理能力是工具不具备的)所以说,虽然自动化测试和手工测试都具有缺陷,但是都是很重要的,都不能被取代,因为人是具有很强智能判断能力的动物,而工具是相对机械、缺乏思维的东西。手工测试是最没有技术含量的,也是最具有技术含量的,关键在测试的主体——“人”,也就是说测试人员的深度决定了测试的深度。深度体现在经验,行业知识,测试技术等等方面。自动化测试很流行,但就目前来看,各个行业效果不一,有好有坏,原因在于业务的复杂度对于脚本的开发维护非常困难。所以现阶段的情况是:手工测试为主,自动化测试为辅。我相信以后很长一段时间还是如此。但我始终相信随着技术的进步测试会更加的自动化,人性化。犹如手机一样我们终将脱离键盘,只需在屏幕上点击测试就行了。

因此,手工测试和自动化测试联合使用才能更完美的测试软件。如果需要对此测试重复的内容的时候,就利用自动化测试工具来完成测试,而一两次的测试,利用手工测试高效的多。另外当要用的测试用例或者某些不能用自动化测试工具的时候,也只能用手工测试。比如,用QTP测试飞机订票系统的时候,需要用到用自动化测试工具来测试脚本,手工录制和编写脚本,二者缺一不可。

相关文档
最新文档