自动化测试目的和常见问题

发表于:2011-2-16 15:28

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

  1、自动化能满足我们什么

  自动化能做什么事情原本是个很古老的命题,基本所有人都知道,而且也有很多人对这一点进行过论述和论证。所以这里不再多说,只为讨论问题的完整性简单进行阐述,以便读者在阅读和思考或讨论的时候能更好的上下文衔接。

  (1)提高测试执行的速度

  毫无疑问,无论使用什么工具,自动化测试执行是使用机器部分代替人工执行的方式,10人日的测试执行工作量可以由5个人花2天也可以2个人花5天完成。自动化如果实现了80%,那么使用2个人1天可以完成剩下的20%手工测试;用一台PC Server组装10套虚拟系统,10套虚拟系统0.8甚至0.5天就可以完成所有这些自动化的测试执行。不考虑自动化开发的投入,还是2个人,1天就能完成所有的测试执行,所以说自动化测试提升执行速度真正的意思是使用同等的执行人力可以结合自动化在最短时间内完成测试执行,而并非说自动化的操作速度比人工快。

  (2)避免机械式重复工作

  虽然测试有像正交覆盖这样被证明了是科学的裁剪方法,但是一方面这些裁剪方法并不是所有的地方都能使用,再者即便都能用测试执行的工作量还是非常大的。无论是多有耐心的测试人员,在长期的测试执行中也会感觉疲惫和乏味,当然有些自制力比较强的同事还是能坚持下来的。自动化测试的好处就在于能替代人去做一些反反复复的工作,可以不眠不休不厌倦;这样可以解放出一部分测试执行人员,让他们向更需要他们的地方成长、发挥。

  特别是对于像我们这样做运营测试的同事来说,可能会有几年只负责测试某一个或几个系统的补丁需求的情况。自动化让大家可以腾出手来做更多的分析工作,一定程度上也能通过提高测试分析设计的投入来提升测试的质量;同时也能让测试人员减少一些乏味的感觉,日新月异的自动化技术和不断产生的问题与系统测试结合也让大家更有解决问题的欲望,在繁琐的测试工作中更容易收获一些乐趣和成就感。

  (3)避免手工易犯的错误

  虽然测试人员普遍比较耐心细致,但是偶尔的错漏总是难免的,笔者参照自己平时的工作总结了了一下,对于笔者来说主要有以下几种导致错误的因素:

  1、正确率总会有极限,就是说测试执行的时候可以细心一万次,也总会有那么几次是不小心就忘了一些什么东西,导致测试结果偏差;

  2、注意力被其他事物所分散,尤其在并行任务较多的时候很容易发生考虑不周全或者忽视了一些比较隐蔽的问题;

  3、不够耐心细致,上节说到反反复复的测试,或者受心情影响,使得测试人员产生懈怠的状况,这样测试出来的结果很难保证就是没有问题的;

  4、思维定势,长期的工作习惯和对某些系统较为熟悉的时候容易产生问题,按照自己的经验去判定一个测试结果的正确性;而实际上一些隐藏的问题在这种情况下较容易被忽视。

  当然,手工容易发生错误的情况肯定不止笔者说的这几种情况,大家可以自己参照一下自己平时的经验,看看都会遇到一些什么样的场景。这些列举的问题如果出现在测试分析和设计的时候自动化是很难替我们避免的,即使有严格的评审机制也不能保证就可以完全避免,所以这里主要是指测试执行的时候。

  (4)自动化最根本的目标

  上文分别说了自动化的三个最为明显的好处,还有一些其他的好处我们就不继续讨论了。虽然自动化测试有这么多好处,但是我们自己到底需要自动化做什么呢?其实还是经典的三个要素:成本、时间、质量;质量不用多说大家也理解,就是避免一些人工容易犯的错误。至于时间,因为执行速度可以得到提高,所以某些测试的周期可以得到控制,比较成功的实践甚至可以大幅缩短测试周期。而成本,这里很笼统的说“成本”二字而并非人力成本或者时间成本,因为好多人把自动化的这点作用理解为节省人力、节省时间,对于测试来说,成本不仅仅是测试人力和测试时间这两点。如果把测试与项目与部门、公司的整体利益孤立开来或许可以这么说,但是测试并不能随意与这些因素割离,因为联系是普遍的,请见第三章第3节阐述。

  2、避开自动化测试的误区

  (1)必须信任自动化测试

  自动化虽然已经经历了10来年的发展历史,但是很多同事潜意识里还是更愿意相信手工测试的真实可靠性。他们其中一部分认为自动化测试是不错的方法和思想,但是相比来说机器永远代替不了人的大脑,不够灵活、不懂得变通;另外一部分从根本上就不信任自动化测试所做的测试执行,认为执行结果不可靠,根本无法节约成本,而且反而会降低测试质量……

31/3123>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号