“-------不论你能够做什么,或是在梦想什么……开始去做就是。勇敢中包含了天赋、能力和魔力。 ——歌德”

软件测试中的功能点覆盖

上一篇 / 下一篇  2009-03-18 21:27:09 / 个人分类:测试相关知识

英语学习
  • 测试英语术语:
  • 日常英语:

}6sC h^J!V7M0  功能点覆盖是在测试工作中经常提到的一个东西。51Testing软件测试网-YT9w%F9Df

51Testing软件测试网d"ChTbn{%N/ra%]

  很多测试人员为了对功能点进行覆盖费劲了心思,可惜的是当他们将达到功能点覆盖100%的,系统,仍然不断出现问题,于是领导的责备,用户的冷眼,开发人员的讥讽就全来了,这个时候测试人员唯一的解释就是测试不是万能的,不可能发现所有的问题。

x N7Jo;f.~{-aW051Testing软件测试网'{W HC Ad8{(y

  这个时候别人一问:你的功能点不是100%覆盖了吗?为什么还有错误没有发现,于是测试人员哑口无言了.

+c7R+Q v%\n[S'HN0

a2zD8?`:G/dH0  其实这个问题的关键问题在于如何功能点这个概念.51Testing软件测试网h`hW_b"n

51Testing软件测试网4CAQoT?uI!~

  功能点的概念其实从开发中来的,在系统开发的时候一般会分层,最上边的的是系统,然后是子系统、模块、功能。一般来说功能是一个系统中最小的单位,这个概念被引入到了测试中来,于是出现了功能点覆盖的概念。51Testing软件测试网 q0@e.aD!u^,b

?)k9^5f,`0  功能点覆盖一直一个没有明确的概念,这个概念很容易迷惑测试人员,如何算功能点覆盖了?51Testing软件测试网0p jvW tS

&f-jD7g0w9`t0  功能一般是系统完成一个具体的操作,比如在人力资源管理系统的中人员基本信息模块中有一个增加新人员信息的功能。

R+`e#S&Mj0

6wX5g!@@1o3_ }LH,r0  我们在对这个功能进行覆盖的时候,一般会考虑几个方面51Testing软件测试网5a(A7[qMm\*WDyd

5_%u&p|`m0  1.合法数据是否可以加入到系统中

.B;A7RI&ln1a051Testing软件测试网p2]f _%z*H

  2.非法数据是否可以检验出来,并给出相关提示

HJR\cRR*D:~051Testing软件测试网Sf+~!N2Y ]4N\

  3.其他操作约束是否可以满足,51Testing软件测试网QZZP]2]

51Testing软件测试网 q\CM6Wy

  如果这些方面都要测试到,那么用一个测试用例是不可能覆盖的,51Testing软件测试网)A'o3o"qvL2Dx

"DlC`nU3C0  这里有问题了。51Testing软件测试网4i e0nG}n9j!AE~

Vp r5E\0  我就写了一个测试用例是否就算覆盖这个这个功能?

,[C K[C051Testing软件测试网0N*H-Y'uD0_w$ZO

  我用100个不同的测试用例进行测试是否算覆盖了这个功能?51Testing软件测试网 e}3n&Uu/x(o iE

oP(hKv(DF3j A0  我用里10个测试用例发现了一个bug和用200个测试用例发现了一个bug ,对系统来说是否有什么不同?51Testing软件测试网"O2n#gxM \'K-~

51Testing软件测试网)@3Kbn}L

  所以个人认为在这个时候应该引入一个概念就是功能测试点的概念

5p0p*Ar9D-d!T}051Testing软件测试网Mb IcHmM

  我们在需求报告或者概要设计报告中很容易总结出系统所有的功能点,这些功能点是开发人员提供给测试人员的,那么测试人员要做什么?就是确定每一个功能(点)有多少个地方需要测试,而这些点就是功能测试点,

~.k(^#T7K O+b:I7x8vV051Testing软件测试网0InK$Lz(|6e

  用来衡量测试人员工作效果的就是对功能测试点的覆盖

hG1sK*B Lo6H0

/l#?8H rZ0  这样可以很好解释,测试用例的数量和产品质量之间的关系。51Testing软件测试网6n ws6N"oFdmRg

51Testing软件测试网 z J a6eaT_C!@

  比如功能(点)覆盖达到了100%,但功能测试点的覆盖只有10%,说明测试强度不够,即使所有的功能都涉及到了,但测试强度还是很小的,产品的质量同样是没有保证的51Testing软件测试网AcO p:C!v:f:s

51Testing软件测试网%N^NtW%EpJ i5g

  同样的是,一个功能点我用了10测试用例发现一个bug,和用1000测试用例发现一个bug,虽然从bug数量上来说是一样,但后边一种对代码覆盖率要大(按照测试用例的方法来编写测试用例),所以,说明第二个系统可靠性比第一个系统要高。

O4n-gH O5ri;g0

Pe kTN3o0  将功能点和功能测试点区分开来还有一个好处,就是在统计测试人员工作效果的时候比较好,

~Ej wV,\1p051Testing软件测试网*`Na5@%cDy

  对于测试人员的工作成绩不能单纯地以发现软件缺陷的数量来说明,否则容易造成偏颇,通过功能点覆盖和功能测试点覆盖率来分解统计可以比较精确反映测试人员实际工作量。

e^&cAj9r0

TAG:

引用 删除 dcwang2005   /   2009-04-15 10:11:08
写的不错,功能测试点这个想法很好。
引用 删除 dcwang2005   /   2009-04-15 10:10:19
5
比较狠的测试间 引用 删除 qiguojie   /   2009-03-20 14:36:40
所谓的覆盖不可能完全达到,如果你写报告说100%覆盖,那么甭管你覆盖了多少,出现一个问题你就等着承担责任吧。

我觉得覆盖率还是要提高,但是也要向其他部门的人员来灌输覆盖率的思想;测试不是神,什么都能测试到。
 

评分:0

我来说两句

日历

« 2024-01-20  
 123456
78910111213
14151617181920
21222324252627
28293031   

数据统计

  • 访问量: 20230
  • 日志数: 48
  • 文件数: 2
  • 书签数: 7
  • 建立时间: 2008-09-13
  • 更新时间: 2009-05-06

RSS订阅

Open Toolbar