没有最好,只有更好!

软件测试技术基础学习笔记之测试过程

上一篇 / 下一篇  2008-12-28 18:51:45 / 天气: 阴雨 / 心情: 谨慎 / 个人分类:测试基础知识

1、测试阶段划分(按测试执行顺序):

定义:针对软件基本组成单元(软件设计的最小单位)来进行正确性检验的工作

Nr6F/c-YZR!q0

测试目的:检测软件模块对《详细设计说明书》的符合程度。

*C{\+wJ8@F)\SZFf0

定义:在单元测试的基础上,将所有模块按照概要设计要求组装成为子系统或系统,验证组装后功能以及模块间接口是否正确的测试工作;51Testing软件测试网!GZ9J} Z t%f1pC#r u

测试目的:检测软件模块对《概要设计说明书》的符合程度。51Testing软件测试网4DJc8Lm7]k

定义:将已经集成好的的软件系统,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他元素组合在一起,在实际运行(使用)环境下,对计算机系统进行的一系列的测试工作。51Testing软件测试网WB8[Q(Q+X\}yr p

测试目的:《需求规格说明书》做比较,发现软件与系统需求定义不符合或与之矛盾的地方。

m;iB4Nx4Ad9Ob%IU y0

定义:软件在测试或其他活动中发现的缺陷经过修改后,进行的测试;51Testing软件测试网;A*xjU-I.i.{~!c

测试目的:验证缺陷得到了正确的修复,同时对系统的变更没有影响以前的功能;

3GD2w m&` VA2k+R0

特点:回归测试可以发生在任何一个阶段,包括单元测试、集成测试和系统测试;51Testing软件测试网8P1@} n0y

策略:51Testing软件测试网$P|+De3i.X I:S

①、完全重复测试:重新执行前期建立的所有测试用例,并确认确认缺陷解决和修改的扩散影响性; 

^ d1Tc Yr0

②、选择性重复测试:51Testing软件测试网7h\,\\*x z5M'{9y9R

——覆盖修改法:选择直接影响的用例;51Testing软件测试网_ JRj z1_

——周边影响法:选择间接影响的用例;

Pt@K.X0

——指标达成方法:达到指标的覆盖率等。51Testing软件测试网3W'j j)^0Y9T}0g

流程:

5B{d*J7j#u,p0
  1. 制定回归测试策略
  2. 确定测试的版本
  3. 按照回归测试策略执行回归测试
  4. 回归测试通过,关闭缺陷跟踪单(问题单)
  5. 回归测试不通过,缺陷跟踪单返回开发人员,经开发人员修改后再次进行回归测试

;_]%mv-bupj"}0回归测试自动化:(需考虑的问题如下)

~7r0E\;D?u4N2E0
  1. 回归测试是一个重复的以前测试的测试,所以自动化是回归测试的追求;
  2. 自动化法包括:程序的自动运行、自动配置,用例的管理、自动输入,测试自动执行,测试结果自动采集、比较及结论的自动输出;
  3. 对比较稳定的可采用QTP、Robot、SilkTest等工具的“捕捉回放”工具;
  4. 为了能实现自动化需要用到脚本语言,如:TCL、Python、Perl等;
  5. 对比较复杂的过程,无法借助工具的需要自己开发专用工具;
  6. 尽早考虑回归测试的自动化,形成工具化、可继承和推广的。  
  • 其他测试阶段
    • α测试用户在开发环境下进行的测试,评价软件FLURPS
    • β测试多用户在实际使用环境下进行的测试
    • 验收测试用户根据合同、《需求规格说明书》或《验收测试计划》对产品进行的验收测试

$d6H1],s#YcSIY&z0注:FLURPS即:功能、局域化、可用性、可靠性、性能、技术支持

SMb~/G n:p(j0
2、单元测试、集成测试、系统测试的比较:
  • 测试方法:

单元测试属于白盒测试范畴;

:~c-F6BR0

集成测试属于灰盒测试范畴;

z.iFu9N oS0

系统测试属于黑盒测试范畴;51Testing软件测试网wU-a&@pq2E

  • 考察范围:

单元测试主要测试内部数据结构、逻辑控制、异常处理等;

y%Y!dm6_h z _0

集成测试主要测试模块间的接口与接口数据传递关系,以及模块组合后的整体功能;

%a^X*u_ZW0

系统测试主要测试整个系统相对于需求的符合度;

)Z:KV:|4[0
  • 评估基准:

单元测试主要通过逻辑覆盖率来评估;51Testing软件测试网oH!E mM&`

集成测试主要通过接口覆盖率来评估;

:fz'p!Q(u DGG0

系统测试主要通过测试用例对需求规格的覆盖率来评估;

@v ZT Z&B)k)P:Y#l0
51Testing软件测试网#[9S\9Yb J

 51Testing软件测试网 W Q)fxk

3、测试阶段的过程划分:             

z9{`D ]0

 过程划分 51Testing软件测试网-S ]"gy(TA{i,F

 输出

,X8HF"i/S5`5g \f0
51Testing软件测试网3N-Uk+B6fI#AZ!R4gS

  • 测试计划阶段——测试计划
  • 测试设计阶段——测试方案
  • 测试实现阶段——测试用例、测试规程
  • 测试执行阶段——测试报告

主要的测试文档:51Testing软件测试网,j&W#E.F'u_X

  • 测试计划:测试范围、方法、资源,以及相应测试活动的时间进度安排表的文档;
  • 测试方案:为完成软件集成特性的测试而进行的设计测试方法的细节文档;
  • 测试用例:为完成一个测试项的测试输入、预期结果、测试执行条件等因素的文档;
  • 测试规程:执行测试时测试活动序列的文档;
  • 测试报告:执行测试结果的文档;
  • 测试日报:每天测试执行情况的记录和总结。
4、测试过程模型:
  • 瀑布模型:缺点是没有测试阶段独立分开
  • H模型:优点是把测试工作独立出来

~$HzAVf0

4T:Z/b"P]/S3VVj051Testing软件测试网#hd+H%g[

测试准备活动包括:测试需求分析、测试计划、测试设计、测试编码、测试验证;51Testing软件测试网.]E2oq&}+[9Ig

0[d2o j)X^o;a0测试执行活动包括:测试运行、测试报告、测试结果分析等;51Testing软件测试网"L+M`YT6j

  • V&V模型:验证(verification)与确认(validation)模型

z`']+@d,dQ2C0验证:保证软件正确地实现特定功能的一系列活动;

p o3]{fwhp051Testing软件测试网T!b;z\!}wl.`0e

确认:保证所生产的软件可追溯到用户需求的一系列活动51Testing软件测试网 N&?}DyM n

51Testing软件测试网L?B,F+{ma

优点:测试设计和测试执行相分离;测试工作独立分开,并和开发联系起来;测试执行顺序与开发活动顺序相反。

RtEDu9l051Testing软件测试网P,qs)O5l4o

,RG4N4Jy0nSQ.R0
5、软件测试过程规范

首先来看看软件最权威的规范CMM(capability maturity model 能力成熟度模型)关于过程的要素的描述有哪些?51Testing软件测试网9ZlfzoJ_k3? T

  • 角色(rolse):执行者、工作者
  • 入口准则(entry criteria):过程执行的前提条件
  • 输入(input):过程所需资源
  • 活动(activities):过程执行
  • 输出(output):过程执行结果
  • 出口准则(exit criteria):过程结束的条件
  • 评审和审核(reviews and audits):监督活动
  • 可管理和受控的工作产品(work products managed controlled):标准性的东西
  • 测量(measurements):可以度量的
  • 书面规程(documented procedures):计划文档类
  • 培训(training):业务培训等
  • 工具(tools):过程执行采用的工具

4^:~\ R*YMN0这些要素已经全面囊括了一个过程的方方面面,如果在软件流程中的每一个过程都按照这样的规范执行,那么软件质量就能得到一定的保证!

6aG+Ee4J051Testing软件测试网"[!V.VpWy&M9JCm

那么作为软件测试工作,在整个软件开发流程中的每一个过程中有哪些工作要做的呢?下面我将分角色、分阶段的来学习

N0S-h%L*P0
6、系统测试过程

在这里主要研究软件系统测试过程中的输入和输出,了解我们应该根据什么来做、要做什么以及我们做的先后顺序是怎么安排的过程。

-o}[ Ph/` g0

系统测试计划阶段51Testing软件测试网Rn'v4O*E+h

输入:软件开发计划、软件测试计划、需求规格说明书51Testing软件测试网Ja.U.i;o;Y4A{;J

输出:系统测试计划

'en\*Sf a qN0

系统测试设计阶段:51Testing软件测试网,b V{8Q;RGN2V\'c]

输入:需求规格说明书、系统测试计划51Testing软件测试网1AL4x8^)\(o7s

输出:系统测试方案51Testing软件测试网D!? @%d3l&]|

系统测试实现阶段:51Testing软件测试网|&` [!_N3K0W

输入:需求规格说明书、系统测试计划、系统测试方案

0R~1EbJ4VHH0

输出:系统测试用例、系统测试规程、系统测试预测试项51Testing软件测试网%kd9Pg0YX \F

系统测试执行阶段:51Testing软件测试网"\*Oe7X8r0k P?` x

输入:系统测试计划、系统测试方案、系统测试用例、系统测试预测试项、系统测试规程51Testing软件测试网K fl},@vr;U0qD

输出:系统预测试报告、系统测试报告、缺陷报告51Testing软件测试网fq]|f6MG'pn

7、集成测试过程

同样这个过程将研究集成测试过程各个阶段的输入及输出。51Testing软件测试网FcC^$U,Icjh

集成测试计划阶段:51Testing软件测试网7O'z!b]!v5NTpu

输入:软件测试计划、概要设计说明书

-Dk*x@^8W0

输出:集成测试计划51Testing软件测试网 w` r&i c4c-L

集成测试设计阶段:51Testing软件测试网EdJ?'Rd

输入:概要设计说明书、集成测试计划51Testing软件测试网.s+s1e2c_\

输出:集成测试方案

pr o0K9` g[P0

集成测试实现阶段:

xzcj[O5l0

输入:概要设计说明书、集成测试计划、集成测试方案

|*O x7M J |"s0

输出:集成测试用例、集成测试规程

xDtz)[b0

集成测试执行阶段:

$R/We|~B0

输入:集成测试计划、集成测试方案、集成测试用例、集成测试规程

k[W)K&m qcu0

输出:集成测试报告、缺陷报告

-N.Xf N-^ Tj0
8、单元测试过程

同样这个过程将研究单元测试过程各个阶段的输入及输出。

m naK;wM)I(V-e0

单元测试计划阶段:

2R`~2\2V exE v0

输入:详细设计说明书、软件测试计划

a/~ BS zU7E9f(yg0

输出:单元测试计划

~*W(n%l;n0

单元测试设计阶段:

rZB[UHXFi0

输入:详细设计说明书、单元测试计划

C_;o~&N5?:A8l0

输出:单元测试方案

P.]hW)QfO#\0

单元测试实现阶段:51Testing软件测试网a.mgXw;u,|.x f7`9c

输入:详细设计说明书、单元测试计划、单元测试方案51Testing软件测试网}+? jz0|

输出:单元测试用例、单元测试规程

Ak?;fTE3Ew&xy0

单元测试执行阶段:

E0`%KH I0

输入:单元测试计划、单元测试方案、单元测试用例、单元测试规程51Testing软件测试网#yr7M(nuWYn}

输出:单元测试报告、缺陷报告51Testing软件测试网*o/m*a/V&p`?

9、需求分析阶段

qr&h"|;su5^Mc0每个阶段有每个阶段的任务,这里将了解需求分析阶段的任务,及其软件项目各工作人员的任务所在。

*H1BH0gc;SC051Testing软件测试网.^P/Ht4o0p;\:b%CW

需求分析阶段任务:51Testing软件测试网v f%c8P4D9Y6E

  • 需求分析,完成SRS
  • 软件需求规格说明书的评审:检查遗漏和存在问题
  • 进行需求跟踪
  • 系统测试计划
  • 系统测试计划的评审
10、概要设计阶段

概要设计阶段任务:51Testing软件测试网vrS#t J~!B

  • 软件系统各层设计,完成HLD
  • HLD的评审
  • 更新需求跟踪
  • 系统测试方案、用例的设计
  • 系统测试方案、用例的评审
  • 集成测试计划
  • 集成测试计划的评审
11、详细设计阶段

详细设计阶段任务:51Testing软件测试网bv9q:h&C@c'q

  • 软件详细模块的设计,完成LLD
  • 详细设计的评审
  • 更新需求跟踪
  • 集成测试方案、用例的设计
  • 集成测试方案、用例的评审
  • 单元测试计划
  • 单元测试计划的评审
12、编码阶段

编码阶段任务:

)Q:j j0]t)K^z0
  • 软件编码
  • 对代码进行静态质量检查
  • 代码评审
  • 单元测试方案、用例的设计
  • 单元测试方案、用例的评审
13、测试阶段

测试阶段的任务:51Testing软件测试网Y5`c1?:I[j

  • 系统预测试项执行
  • 系统预测试报告工作
  • 执行各阶段测试用例
  • 各阶段的缺陷记录、修复
  • 各阶段日志报告
  • 各阶段缺陷的回归测试
  • 各阶段测试报告
  • 测试报告的评审
51Testing软件测试网%LN"o\ KV

(待续……)

Y}Q,v[^0
51Testing软件测试网;Q6kw|ZnfR,B I

 51Testing软件测试网,o6u3Q;\!b6I&|

4t Qd5Yv(B.p(m0 

%[ ]8g0D+|~-[0

Z1} S)T-y:ZN0 

3S\a)M KA,x0

9e,O;n``_&Jh0 51Testing软件测试网j^d%{1j

51Testing软件测试网cFq+uFG.RF

 

xU@yL W1R-~3X0

)W*sG[5F#A0 

`?8W]1mO c051Testing软件测试网A`E p|K)]nG%\

 

zau*{ a4L|B051Testing软件测试网 H9a:rgG

 51Testing软件测试网8}$v1h8u Ccf;D:I-I

Y.?5?L ZB(Y_0 

V0hIx0jn051Testing软件测试网i t$ph_V

 51Testing软件测试网U0w;La6^

kV)x+m[:O/m+vH%FN0 

#G r ao!A0

TAG: 单元测试 系统测试 集成测试 回归测试 验收测试 测试基础 测试基础知识 自动化 α测试 β测试

温暖在人间 引用 删除 love0523   /   2010-02-03 16:38:10
3
啼笑皆非的个人空间 引用 删除 啼笑皆非   /   2010-01-05 14:37:42
5
 

评分:0

我来说两句

日历

« 2024-04-11  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 27149
  • 日志数: 21
  • 建立时间: 2008-12-23
  • 更新时间: 2009-03-12

RSS订阅

Open Toolbar