自动化测试是不是能达到90%甚至100%的覆盖率?

原创 2007年09月20日 22:15:00
    自动化测试是不是能达到90%的覆盖率?
    简单的说,理论上可以。实际上不可能。
    在网上看了不少关于测试自动化的文章, 大多是“高屋建瓴”,或者是互相转述。就像写程序,写的越抽象的顶层父类越不容易出错,都是指导性方向性的话,轻易是找不出什么破绽的,也不容易被驳倒。
    本人喜欢钻研技术,奉行实用主义,对于遇到的问题常常持否定态度,不会从战略性高度看问题,因为往往技术上的一个小小细节可以否定一整套方案。在考量一个方案是否可行时,首先就是相关的技术细节是否走得通。如果逻辑上都走不通,那也不必费力气去搞下一步了。
    对于自动化测试是不是能达到90%的问题想说说自己的体会。
    按照实用主义的逻辑我列举几个实践中遇到的困难。
    1。眼下的开源工具层出不穷,测web,gui的,unit test的。几乎覆盖了测试的所有方面。那是不是这些工具加在一起,就等于是一个完整解决方案了呢?   
    拿web测试工具来说,selenium,httpunit,htmlunit,watij。这几个工具,有的是依赖浏览器,有的是不依赖浏览器的,各有长处。
  • 困难一,难识别。IE的容错性太好了,对不规范的HTML代码一样可以正确解析,被测试的产品肉眼看上去没有问题,看看HTML代码真是糟糕。设计再好的工具,对这方面还是要有些要求的。虽然有Xpath,那样的代码真是难以读懂。
  • 困难二,页面上元素属性经常被随意改动。开发随心所欲,因为只要在浏览器里看起来正常,最终用户是不会在乎某个字段实际的名称是什么的。这样写好的测试代码受到的影响非常大,要花额外的功夫去维护。这个成本在项目开始之初是需要考虑进去的。
  • 困难三,难写。这是专门指除selenium外的几个工具,都要求有基本的java基础。这其中htmlunit为最甚,每次点击输入都要指定返回的类型,每次去抓不规范的URL,都要从数组里搜一遍。不熟悉的话,五个页面的操作,估计要写上一天时间。这一点watij相对较好,java包装的IE的api,抓页面上的对象,语法都比较简单,但不能跨平台。
    2。许多人觉得什么人都能搞测试自动化,更要全民皆自动化。全面自动化等于不等于高自动化率?不是,国情不同,也许国外的QA人员素质比开发人员的水平高,对于开发语言,各种工具,理论都很熟悉。这样的的QA人员可能一个顶几个,不过人力成本也大。国内的情况是,QA水平低于开发很多,低到写简单的自动化脚本都觉得困难。再好的工具也会被说成不好用,不放心,还不如手工测试。当然,也有好学上进的,努力学习各方面知识,自动化工具用的也很好,结果怎么样? 去做开发了。一句话,几亩薄田种不出好庄稼。
   
   
    3。有人说我们拿自动化测试工具去发现bug。
    这句话要分两面看,如果是用来做回归测试的话,去发现原有功能不应该出现的问题,这是自动化测试工具擅长的,可以为产品提供信心保证。工具只会做人们告诉它要做的事情,要它主动去找bug,这个说不通。

    这样说来,测试自动化的前景并不是很乐观。未必,只要认清误区,降低期望值,缩小并专注于一定范围,自动化还是会起到应有的作用。 

软件自动化测试—代码覆盖率

软件自动化测试—代码覆盖率在中提到了代码覆盖率,我很久没有去书店了,不知道是不是出了新的版本,觉得书里面关于代码覆盖率方面的知识有些地方没有讲,在这里补充一下。先回顾一下如何查看代码覆盖率 创建一个C...
  • Donjuan
  • Donjuan
  • 2009年12月19日 23:15
  • 5656

浅谈代码覆盖率

原文   http://tech.youzan.com/code-coverage 引言 经常有人问这样的问题:“我们在做单元测试,那测试覆盖率要到多少才行?”。答案其实...
  • hwhua1986
  • hwhua1986
  • 2017年02月21日 13:58
  • 256

UI Test自动化测试查看覆盖率注意事项

UI Test自动化测试查看覆盖率注意事项参考博客地址:http://www.cnblogs.com/hushuai-ios/p/5281932.html- 查看 clang -v 需要进入 xcod...
  • huobanbengkui
  • huobanbengkui
  • 2016年03月17日 16:18
  • 552

通过jacoco检查自动化代码覆盖率和报告分析

背景: 虽然jacoco出来也有一段时间了,文章也有,但是网上的文章都是新建的一个测试工程,照着跑下来,到处都是坑…所以还是自己再研究一下吧,并且起码比他们的详细。 环境: android stud...
  • Cloud_Huan
  • Cloud_Huan
  • 2016年08月22日 14:21
  • 3464

自动化测试之路——EMMA在java代码覆盖率自动化测试中的应用(一)

不同于传统的用例设计测试,EMMA使得自动搜集java代码覆盖率成为了可能,代码覆盖率的搜集使得测试人员对代码质量有更好的把握。 测试的环境 jdk1.8   Ant 1.9   EMMA 2.0 ...
  • zhengzeshu
  • zhengzeshu
  • 2016年03月03日 16:48
  • 626

自动化测试理解

以下问题,可以帮助我们更深入的理解自动化测试?而不只是停留在自动化测试工具的使用上。 什么是自动化测试? 通过工具记录或编写脚本的方式模拟手工测试的过程,通过回放或运行脚本来执行测试用例,从而代替人工...
  • slforeverlove
  • slforeverlove
  • 2015年09月01日 21:32
  • 1096

自动化测试三个阶段

1.1 录制/回放测试框架 录制/回放测试框架所采用的原理是通过录制应用程序产生的线性脚本进行回放从而达到自动化测试的目的。 其优点是简单,通过录制就可以得到所需脚本。但同时也有很大的缺点,它不具...
  • wangyong0921
  • wangyong0921
  • 2013年08月22日 10:20
  • 978

对UI自动化测试的一些感悟

不断发掘自动化测试对各个团队的附加价值,这样才能得到来自四面八方的支持没有将自动化加入项目过程的自动化都达不到预期的效果UI自动化框架把UI自动化框架设计成一个拼图性质的架构。把每个特性都设计成一个独...
  • a23764996
  • a23764996
  • 2017年02月15日 20:11
  • 2975

自动化测试是不是能达到90%甚至100%的覆盖率?

    自动化测试是不是能达到90%的覆盖率?    简单的说,理论上可以。实际上不可能。    在网上看了不少关于测试自动化的文章, 大多是“高屋建瓴”,或者是互相转述。就像写程序,写的越抽象的顶层...
  • eddyx
  • eddyx
  • 2007年09月20日 22:15
  • 1718

自动化测试之路——EMMA在java代码覆盖率自动化测试中的应用(二)

1.如何在一些常用的服务器(如Weblogic、Tomcat等)中使用? 我们从上一篇文章中可以知道在emma中有两种运行模式。首先,很难有机会在一个成熟的J2EE容器中使用on-the-fly...
  • zhengzeshu
  • zhengzeshu
  • 2016年03月14日 13:39
  • 579
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:自动化测试是不是能达到90%甚至100%的覆盖率?
举报原因:
原因补充:

(最多只允许输入30个字)