说起软件测试需求,有很多人可能会觉着奇怪:“软件测试还有需求吗?不是把你写好的程序给我测试就是了吗?最终我给你一个测试结果就可以了吧”。这种想法在前几年还是可以的。随着软件系统的日趋复杂及精确性,软件测试也变得极为复杂,它是一项系统工程,由软件测试工程师、软件开发工程师与用户三方协同交流共同完成。没有测试需求,测试人员往往就不知道自己究竟要测什么,测试也不会达到既定目标。那么究竟什么是测试需求以及测试需求与软件需求有什么联系与区别呢?本文将就这些问题进行详细地阐述。
1.
什么是测试需求
套用软件需求的定义,我们可以说需求是
…
指明测试什么的规格说明。它描述了我们测试系统的行为、特性或属性,是在测试过程中对测试的约束。
测试需求分析
实际上
是
通过
划分需求来源、分解测试需求类型,并分析
测试需求的确定性、可测性、测试次序、重要性、稳定度、工作量
…
等
活动
,
来定义出
测试需求的
测试范围
、
优先级
、
测试风险
、
关系及约束
,并建立与需求规格、测试用例之间的双向跟踪关系
的过程
。
测试需求则是直接源自于客户的质量要求。测试需求的源头非常繁杂,如何删繁就简,拿捏得当,目前没有现成的方法,仍需要做大量理论研究和实践探索。
2.
软件测试需求的作用
软件测试需求的作用不言而喻,他与软件需求分析的作用很接近,决定了后面如何做测试计划及安排测试人员的测试工作,也是测试人员的测试工作的依据。
3.
测试需求的基本属性
3.1.
用户接受的测试需求属性
测试需求的名称
为了便于对测试需求进行规范管理,方便查询和统计分析,用来唯一标识一个测试需求。
测试需求的编号
“
需求编号
”
采用
“REQ-A-B-C”
四段编号,其中
“REQ”
代表需求,
“A”
代表系统名称,
“B”
代表模块名称,
“C”
代表三位的功能点顺序编号,从
“001”
编起。
如
“REQ-CCI-
外呼-
001”
,表示
CCI
系统
“
外呼
”
功能模块的第一个功能点。
上级需求的编号
为了对某测试需求进行详细划分,请将该测试需求作层状显示。如下所示:
需求
1
需求
11
需求
111
……
需求
12
需求
121
……
需求
2
需求
21
需求
211
……
需求
22