测试自动化与软件过程改进

发表于:2007-6-27 13:11

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

 作者:alanstone    来源:希赛网

         测试自动化与软件过程改进是两个独立的事务。先来看看软件过程改进,软件过程改进的核心思想是将软件的生产过程规范化,这就象工厂的流水线一样,要求每个岗位都有自己的标准操作流程,这样可以将因更换操作人员而引起的质量问题减到最少。只有在确定了标准操作流程后才可以对操作流程进行不断的改进,以达到更好的质量和效率。

         再来看看测试自动化,测试自动化的实现方法是用机器代替人的手工操作,完成一系列的测试过程。从原理上看测试自动化也是一个标准的操作流程。测试自动化实际上是在模拟人的手工操作,在现阶段手工测试在很多公司是一种艺术行为,同样一个模块不同的测试员会发现不同的问题,这与测试员的直接能力成正比,同时还与测试员的心情有直接关系,这实际上是一种无序的操作行为,这种现象的最大问题是随着人员的变动产品质量也在进行相就应的波动。

         用一个比较形象的比喻,每次我们对产品实施测试就好象是织一张网,然后用网去捕虫,但是我们每次织网的方法都不一样,网也就会不一样,有时密有时疏,这就导致了有时我们会抓到好多的虫,有时又抓不到虫。如果我们每次织的网是一样的,那么抓到虫的数量也是基本不变,同时我们对网进行不断的改进,将疏的地方加密,这样就能抓到更多的虫。 

        测试自动化是代替人的手工操作,自动的发现产品中的问题,这就好比自动织网自动捕虫,我们所要做只是不断的补网,但如果没有标准操作,我们就不能补网,不知道要在哪里进行修补。这会出现两种情况。1.网抓不到虫,这样这张网就没有任何意义。 2.每次都要做一张新网,可以捕到虫了,但成本太高。
 
         让测试自动化真正发挥出强大的威力,就要对这张进行不断的修补。如果我们每次的操作都是相同的,再通过对结果的验证和补充,不断的完善,这样才能将发挥自动化的强大的力量。
 
         将测试的操作标准化不是简单的写个用例就可以解决,它要包括很多详细的内容,要包括数据的准备,系统环境的准备,标准的操作流程,以及结果的标准判断方法。最佳实践效果就是一个只要会操作计算机的人都可以执行测试,并且结果是相同。那么这时实施自动化才会发挥最大的功效。
 
         从上面可以看出测试自动化的实现成本较高,我们不能单纯的出于技术目标而实施自动化,自动化的实施只有在产品的被测试部分相对稳定后才可以实施自动化。在业界暂时还没有通用的判定标准。
 
         合理的运用自动化测试可以大大提高工作效率,反之则会是无何止的噩梦。无论测试自动化多么强大,在现阶断仍然是以手工测试为主。我想不需要人工设计的测试自动化只有在斯皮尔伯格的<人工智能>实现后才会真正的出现。

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

精彩评论

  • rogerlau
    2007-7-05 15:08:10

    自动化的实施只有在产品的被测试部分相对稳定后才可以实施自动化。
    ~~~~~~~~~~~~~~~~~~~~~~~~
    上面那句话不赞同....这只是自动化测试实施的一个方面,不是充分条件.

  • atman
    2007-6-29 11:37:03

    我实现了“使用动作词的测试自动化”的实用框架,有需要者,请联系我。test-auto@hotmail.com

  • Ramon22
    2007-6-27 21:17:53

    是呀,自动化的引进,的确要从多方面考虑.

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号