每天进步一点点,用感恩的心做人!

浅谈软件测试流程

上一篇 / 下一篇  2007-03-26 17:32:51 / 个人分类:测试技术

浅谈软件测试流程51Testing软件测试网7E/j.}+E*dV:{,`

 

5g2RxoUn15287703

宣言:xuanyan356@163.com51Testing软件测试网p7O+C r ]W

 51Testing软件测试网;f!s7Z-].S

【摘要】软件测试从哪里开始到哪里结束?中间要经过哪些环节以及各环节要注意哪些事项。本文就有关问题结合个人实际工作经验进行阐述,鉴于每个环节都可以做为一个专题来进行探讨,所以受篇幅和时间限制,本文对有关问题未做深入剖析,只做一个宏观上的介绍。51Testing软件测试网@ {[LLo&P j

【关键词】测试流程、需求分析、测试用例、测试计划、缺陷管理

_^GR Fs.a15287703

 51Testing软件测试网 mMlXZc;X

一、概述51Testing软件测试网,E*n\v^4k&_

 

bGrrK7Q s15287703

一般而言,软件测试从项目确立时就开始了,前后要经过以下一些主要环节:51Testing软件测试网!xG"WH,qC,WJ

需求分析→测试计划→测试设计→测试环境搭建→测试执行→测试记录→缺陷管理→软件评估→RTM.

k/c9G0` RB,F15287703

 51Testing软件测试网T!d9^+N*D0c,},R;am

在进行有关问题阐述前,我们先明确下分工,一般而言,需求分析、测试用例编写、测试环境搭建、测试执行等属于测试开发人员工作范畴,而测试执行以及缺陷提交等属于普通测试人员的工作范畴,测试负责人负责整个测试各个环节的跟踪、实施、管理等。

vkD-H8lg]n15287703

说明:51Testing软件测试网h$iS o_

1.以上流程各环节并未包含软件测试过程的全部,如根据实际情况还可以实施一些测试计划评审、用例评审,测试培训等。在软件正式发行后,当遇到一些严重问题时,还需要进行一些后续维护测试等。51Testing软件测试网r;{+r(Bd ~t`~

 51Testing软件测试网0M:a&^^.jhT.mx

2.以上各环节并不是独立没联系的,实际工作千变万化,各环节一些交织、重叠在所难免,比如编写测试用例的同时就可以进行测试环境的搭建工作,当然也可能由于一些需求不清楚而重新进行需求分析等。这就和我们国家提出建设有中国特色的社会主义国家一样,只所以有中国特色,那是因为国情不一样。所以在实际测试过程中也要做到具体问题具体分析,具体解决。

8\ G$Q4b!P15287703

 51Testing软件测试网2yn)e?j_4V?

二、测试流程

X4IW*dq15287703

 51Testing软件测试网lGs(U0ugs,}

Ca@r(P j;x$dGoh15287703

51Testing软件测试网 pz5^ {J2_:C:a&q)W

 51Testing软件测试网9Z6djd'k

    

8}3k;V)Sq x5ox#r15287703

需求分析51Testing软件测试网3}+r$p:M7ZTo

 

)^(q#JS;UY!b/T4iG15287703

需求分析(Requirment Analyzing)应该说是软件测试的一个重要环节,测试开发人员对这一环节的理解程度如何将直接影响到接下来有关测试工作的开展。51Testing软件测试网 oHxyxd(C|`,~

可能有些人认为测试需求分析无关紧要,这种想法是很不对的。需求分析不但重要,而且至关重要!51Testing软件测试网i"kpD rs|;?

 

E!X!CSJa8A15287703

一般而言,需求分析包括软件功能需求分析、测试环境需求分析、测试资源需求分析等。

^gw6PEC15287703

 

ne_fq1AEi15287703

其中最基本的是软件功能需求分析,测一款软件首先要知道软件能实现哪些功能以及是怎样实现的。比如一款Smartphone包括VoIPWi-Fi以及Bluetooth等功能。那我们就应该知道软件是怎样来实现这些功能的,为了实现这些功能需要哪些测试设备以及如何搭建相应测试环境等,否则测试就无从谈起!

0D"si$Mu.v1} si15287703

 51Testing软件测试网z.[t0j(m

既然谈了需求分析,那么我们根据什么来分析呢?总不能凭空设想吧。51Testing软件测试网m-~qT1v3j]#A+TO

 51Testing软件测试网Z4F H*sm&hH

总得说来,做测试需求分析的依据有软件需求文档、软件规格书以及开发人员的设计文档等,相信管理一些规范的公司在软件开发过程中都有这些文档。

0X"IU/?:Lv15287703

 51Testing软件测试网jo6yZt8e6n

测试计划51Testing软件测试网D@ E z;P5l|

  

K5~0yX'RCf ]@15287703

测试计划(Test Plan)一般由测试负责人来编写。

BH8AO4j m? d9L15287703

 

J4^7Of+MS-A;p~15287703

  测试计划的依据主要是项目开发计划和测试需求分析结果而制定。测试计划一般包括以下一些方面:

.Odb8cs kh4Mt15287703

 51Testing软件测试网 nfXw|'z;ib8uS

1. 测试背景

+Vr#x7Xh^`0G K15287703

a.      软件项目介绍;51Testing软件测试网V.eS ue{z&y

b.      项目涉及人员(如软硬件项目负责人等)介绍以及相应联系方式等。

.\ZnQ CE,EL%X1Z`15287703

2. 测试依据

mh4V_/D? P15287703

a.      软件需求文档;51Testing软件测试网u7L3r c6\Zme~

b.      软件规格书;51Testing软件测试网A0H#Y2Jx/Fw$oB

c.      软件设计文档;

`t#P7E]Y15287703

d.      其他,如参考产品等。51Testing软件测试网_ s}g*BI5O;uI

3. 测试资源51Testing软件测试网/fLqnXY/H TD

a.      测试设备需求;51Testing软件测试网*l Y3FSs$eu$T,G4j

b.      测试人员需求;51Testing软件测试网'[@^&c g^ P qWW7Q{

c.      测试环境需求;

"B"hcM@4M Ua15287703

d.      其他。51Testing软件测试网X`/lW}-n!`

4. 测试策略

M+b$U{"Ps9xJ15287703

a.      采取测试方法51Testing软件测试网-_5\M6vd"H%d5@

b.      搭建哪些测试环境;

"^\!K%T'kL,S7v15287703

c.      采取哪些测试工具测试管理工具;51Testing软件测试网s7Sxu,w/_ Rx.y5^

d.      对测试人员进行培训等。

o)`/a}4KHj15287703

5. 测试日程51Testing软件测试网7W^:hq\'r

a.      测试需求分析;51Testing软件测试网8]Jz,|+B8Z

b.      测试用例编写;51Testing软件测试网(A(AV S R2w

c.      测试实施,根据项目计划,测试分成哪些测试阶段(如单元测试、集成测试、系统测试阶段,α、β测试阶段等),每个阶段的工作重点以及投入资源等。51Testing软件测试网W GgsN"Ro

6. 其他。51Testing软件测试网k"q%Ma7M-DI"c/a

 51Testing软件测试网,Z&Z!I Nf!Ba R+A

测试计划还要包括测试计划编写的日期、作者等信息,计划越详细越好了。51Testing软件测试网 t@BC1ir{^Oe R

计划赶不上变化,一份计划做的再好,当实际实施的时候就会发现往往很难按照原有计划开展。如在软件开发过程中资源匮乏、人员流动等都会对测试造成一定的影响。所以,这些就要求测试负责人能够从宏观上来调控了。在变化面前能够做到应对自如、处乱不惊那是最好不过了。

O"vHrJrg!U15287703

 

D}!C NM\15287703

测试设计51Testing软件测试网?h,s o:r2k;he

 51Testing软件测试网bb6\3m SB3f{*s

测试设计主要包括测试用例编写和测试场景设计两方面。

`$Kl&K2w6rKp7}u15287703

 51Testing软件测试网%Lpm.I#K9|

一份好的测试用例对测试有很好的指导作用,能够发现很多软件问题。关于测试用例编写,请参见前面写的《也谈测试用例》一文,里面有详细阐述。51Testing软件测试网h"B3^,wg

 

QD_J(HN:ol15287703

测试场景设计主要也就是测试环境问题了。

P6[-Elf\15287703

 51Testing软件测试网4p/E"P'ITCs

测试环境搭建

)~\$]"f5AG*v,D15287703

 

-GT$L!P0JKn gJo,M15287703

不同软件产品对测试环境有着不同的要求。如C/SB/S架构相关的软件产品,那么对不同操作系统,如Windows系列、unixlinux甚至苹果OS等,这些测试环境都是必须的。而对于一些嵌入式软件,如手机软件,如果我们想测试一下有关功能模块的耗电情况,手机待机时间等,那么我们可能就需要搭建相应的电流测试环境了。当然测试中对于如手机网络等环境都有所要求。51Testing软件测试网h/uIwbJ-I

 51Testing软件测试网+[L%N+pv5r;i3kG3]

测试环境很重要,符合要求的测试环境能够帮助我们准确的测出软件问题,并且做出正确的判断。51Testing软件测试网}"n&d?Zl(pe

 

Zo9Y6y5yW%f15287703

为了测试一款软件,我们可能根据不同的需求点要使用很多不同的测试环境。有些测试环境我们是可以搭建的,有些环境我们无法搭建或者搭建成本很高。不管如何,我们的目标是测试软件问题,保证软件质量。测试环境问题,还是根据具体产品以及开发者的实际情况而采取最经济的方式吧。51Testing软件测试网PF{?'}gv

 

2Q9_C!B*}15287703

测试执行51Testing软件测试网 Vp1b q/o

   

:J aR4vx15287703

测试执行过程又可以分为以下阶段:51Testing软件测试网xev G_7P

 51Testing软件测试网9_;PHQG+A:e

单元测试→集成测试→系统测试→出厂测试,其中每个阶段还有回归测试等。

'Fm7y4|;vJ15287703

 

W {-p w#Y&j4l/m%|y15287703

从测试的角度而言,测试执行包括一个量和度的问题。也就是测试范围和测试程度的问题。比如一个版本需要测试哪些方面?每个方面要测试到什么程度?

a/{;lU;W] @2Vg15287703

 51Testing软件测试网5d&|1X$VXD*r5m

从管理的角度而言,在有限的时间内,在人员有限甚至短缺的情况下,要考虑如何分工,如何合理地利用资源来开展测试。当然还要考虑以下问题:

|-S-R1VKQB-v15287703

1. 当测试人员测试的执行不到位、敷衍了事时该如何解决?

]7t4Iy5]Y;O)Q15287703

2. 测试效率问题,怎样提高测试效率?51Testing软件测试网&L1fEY hC]

3. 根据版本的不同特点是只做验证测试还是采取冒烟测试亦或是系统全面测试?51Testing软件测试网 KrA]G m

4. 当测试过程中遇到一些偶然性随机问题该怎样处理?

[&I*ye hK8V?15287703

5. 当版本中出现很多新问题时该怎样对待?测试停止标准?

CG8T#K"v#?6x$| m(_15287703

6. ……

o@M#qmrf15287703

总之,测试执行过程中会遇到很多复杂的问题,还是那句话,具体问题具体解决!本文不做过多阐述。

Z6LiBh[ ^8EeY15287703

 

?"c3RN#zy,XI:v(z gS15287703

测试记录51Testing软件测试网l m1q,X,gjk9pM!u

 

1eBn6Kbb7o15287703

缺陷记录总的说来包括两方面:由谁提交和缺陷描述。

[6nx"K;\7jy15287703

 

ZKRNRf*] n%~15287703

一般而言,缺陷都是谁测试谁提交,当然有些公司可能为了保证所提交缺陷的质量,还会在提交前进行缺陷评估,以确保所提交的缺陷的准确性。

SK eRv!qO7G8T15287703

 51Testing软件测试网0nQ'g)s(I~

在缺陷的描述上,至少要包括以下一些方面内容:

re M!Ym i:Po-n{k1528770351Testing软件测试网V4T$|{o%IQ ?(X

序号51Testing软件测试网~F/I l+s

标题

9[)}(Tlg15287703

预置条件51Testing软件测试网N:Ybc{4bp

操作步骤

4K*U1lTOH#\(U15287703

预期结果

'b/R Cb&c15287703

实际结果

u7w$R[+ZF`.do15287703

注释51Testing软件测试网N3x/o$R2et9Z/xS

严重程度

"i"L o8Sx/d2A;I{15287703

概率51Testing软件测试网l'U\ y"T#k/Hj

版本51Testing软件测试网a Y5} D @WOv5_

测试者

.Iw,KN$C4V!M15287703

测试日期51Testing软件测试网k-r9x w8d8T

F(v;Kry cw Mk#r%V"i15287703

 

+aO$W%~|9X-O15287703

以上是描述一个bug时通常所要描述的内容,当然在实际提交bug时可以根据实际情况进行补充,如附上图片、log文件等。

9ck-\4|&H qpmP)}15287703

 51Testing软件测试网X;{9G k OT

另外,一个版本软件测试完毕,还要根据测试情况出份测试报告,这也是所要经过的一个环节。

3KH2q8GOf#p15287703

 51Testing软件测试网7s;NWz;?7~

缺陷管理51Testing软件测试网 S5}7C]2D(h$AF

 

;]B&A;[tY Z15287703

缺陷管理方面,很多公司都采取缺陷管理工具来进行管理,常见缺陷管理工具有Test DirectorBugfree等。51Testing软件测试网/Ljy7fv:n'b'K

 

YA ] U#b5X X15287703

下图是一个bug从提出到close所经过的一些流程,其他比如keep No action\keep spec等一些状态流程都未包含在内,在此仅做示范说明。51Testing软件测试网vj:o x!\ j

 51Testing软件测试网'C&D4OEZ7u@#T h

Qm.b(r9w/?5F%G15287703

SHhhTn.R e3u15287703

 51Testing软件测试网cG h+`AzB#o

注:软件缺陷和bug两者在含义上有着细微差别,本文统称缺陷。51Testing软件测试网"e~ Da)J

 51Testing软件测试网V FT's%Pa1k;D

软件评估

)g#GpD,{&{7NLN15287703

 51Testing软件测试网,p,g xs(BHX

这里评估指软件经过一轮又一轮测试后,确认软件无重大问题或者问题很少的情况下,对准备发给客户的软件进行评估,以确定是否能够发行给客户或投放市场。51Testing软件测试网m a8h$a[Y#Z4b J

软件评估小组一般由项目负责人、营销人员、部门经理等组成,也可能是由客户指定的第三方人员组成。51Testing软件测试网/A/O].v)P3jL

 51Testing软件测试网%f!`(GkNa!K$W+vuz

测试总结51Testing软件测试网,w6G#a ro_ f Zf

 51Testing软件测试网#[:SX\zu8A

每个版本有每个版本的测试总结,每个阶段有每个阶段的测试总结,当项目完成RTM后,一般要对整个项目做个回顾总结,看有哪些做的不足的地方,有哪些经验可以对今后的测试工作做借鉴使用,等等。测试总结无严格格式、字数限制。应该说,测试总结还是很总要的。51Testing软件测试网 [X e"r&n1@

 

`.R-N?-d15287703

测试维护51Testing软件测试网F zfSu/Z \a NH

 51Testing软件测试网"R t{@9E

  由于测试的不完全性,当软件正式release后,客户在使用过程中,难免遇到一些问题,有的甚至是严重性的问题,这就需要修改有关问题,修改后需要再次对软件进行测试、评估、发行。51Testing软件测试网!_ tiB']K9?2Vw"{

 

}S Y+Y*V'S V2t15287703

 

[*Khri)L7hr15287703

作者 宣言2007-03-25

/j(py ~:]3{:MS+z9IGv15287703

TAG: 测试技术

引用 删除 wb0736   /   2016-10-15 12:02:01
-5
zou19890421的个人空间 引用 删除 zou19890421   /   2016-03-02 15:20:59
1
smileno1的个人空间 引用 删除 smileno1   /   2008-12-10 16:05:15
我想问一下,在你工作的过程中,RTM是最后生成的吗?如果是这样,RTM作为整个测试阶段最终的成果物,那他还具有什么样的意义
?谢谢,我平时遇到的与这里所写的有些不一样
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar