浅谈自动化软件测试(2)

发表于:2014-08-11来源:领测软件测试网原创作者:顾翔点击数: 标签:
5 ,是否需要采用自动化测试,需要考虑软件测试的效率。 自动化测试虽好,但它也具有一定的局限性。如果采用现有的自动化测试工具,那么学习熟悉了

5,是否需要采用自动化测试,需要考虑软件测试的效率。
自动化测试虽好,但它也具有一定的局限性。如果采用现有的自动化测试工具,那么学习熟悉了解这些自动化测试工具是要花费一定的时间和精力的;如果自己开发自动化测试工具,开发的过程更要花费相当的时间和人力。所以对于一些需求还不稳定,需求变化很频繁或者对特定客户订制的一些很容易用手工测试来进行的小的功能,我们就不需要用自动化测试的方式。
6,自动化测试可以覆盖软件测试中的每个阶段。
很多刚入门的测试新手往往会认为自动化测试只限于系统测试和验收测试,而不适用于单元测试,集成测试。其实这不完全正确。开源工具JUnit,CUnit以及 ParaSofy公司出品的Jtest,Ctest,C++test和 Google公司开发的GTest等工具都是基于单元或集成测试的。它们除了可以完成单元测试和集成测试工作之外,有些还具有代码书写规范检查的功能,启动运行这个模块,它可以对代码中参照预先定义好的规范进行检查,如果某些代码违反了规范,系统会给出可视化的提醒。
7,软件测试自动化是敏捷开发强有力的工具。
众所周知,敏捷开发强调的是开发的快速性,是“短平快”的开发方式,这必然会增大开发人员,测试人员以及运行维护人员的工作压力。如果我们能对某些功能,尤其是衰退性测试中涉及到的功能进行自动化测试,让这些功能在版本发布之前自动运行,甚至是釆用持续集成(CI)的策略:即在每天晚上,从版本控制管理软件中获取已经Check in的老的及新加入的功能及测试代码,然后对这些功能,测试代码进行自动化编译,再利用新编译好的测试和开发版本进行自动化测试,直到最后测试完毕,系统会自动将测试报告发到相应的每个开发和测试人员以及负责同事的邮箱里,以便于开发,测试人员第二天一早到公司就可看到测试报告,并对没通过的测试模块在第一时间内进行排查。这样就部分解决了敏捷开发中时间紧,工作压力大的缺点,提高了测试的效率。
8,不要盲目选用现有自动化测试工具。
目前市面上流行了许多自动化测试工具,比如本文开始部分提到的那些产品。在许多书籍中对这些工具的使用方法和技巧进行了系统的介绍,有的软件测试培训中心还对这些测试工具作为专门的课程进行教学,这些都是必要的。但这些工具不是万能的,在实际工作中,还要充分结合产品自身的特性,了解这些自动化测试工具是否可以达到测试自己产品的目的,而不要盲目使用这些现有的自动化测试工具,因为它们的功能是有限的。事实上若这些现有的自动化测试工具达不到测试自己产品的目的,那么我们可以建立专门的自动化测试小组,自己开发出符合自己产品测试需求的自动化测试工具,这虽然要消耗一些时间和人力,但自己开发的自动化测试工具,由于是针对自身的产品开发的,因此使用起来效率高,速度快,磨刀不误砍柴工。此外那些现有的自动化测试工具价格都比较昂贵,所以建立自动化开发小组往往是可以节约成本的。
参考文献:
  1. 百度百科:http://baike.baidu.com/view/1303916.htm?fr=aladdin
  2. 《探索式软件测试》,James Whittaker
  3. 《探索式测试》,史亮,高翔
  4. “浅谈探索式测试中用到的一些方法”,顾翔 (已投51testing)
  5. “对敏捷开发的一些思考”,顾翔 (已投51testing)
  6.  “软件测试手册”,顾翔 2007-08-31发布在系统分析网上
  7. “软件测试人员需要掌握的知识” 顾翔 2010-03-31发布在系统分析网上
文章为原创来自领测软件测试网
作者:顾翔
简介:
我1997年毕业于北京工业大学。毕业后在北京爱信天舟互联网络有限公司,炎黄新星网络有限公司从事互联网络和BS结构网络的开发。2002年从事软件测试工作,先后从事通信软件,嵌入式软件,金融软件,财务软件,网管软件,ERP软件从事测试及测试管理工作,现在在北京瑞友公司上海分公司外派爱立信从事通信DNS,DHCP,AAA,WiFi服务器软件测试。发表论文数十篇

原文转自:http://www.ltesting.net/ceshi/ceshijishu/zdcs/2014/0808/207435.html