软件测试学习笔记 - 1 - 软件缺陷,测试员目标

软件测试学习笔记 - 1 - 软件缺陷,测试员目标



1. 软件测试定义:


1983 年,IEEE 对软件测试进行了精确的定义:软件测试是使用人工或自动手段来运行或测定某个系统的过程,检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。

根据调查,软件产品在成本上的分配比例一般来说是: “需求分析” 占6%, “设计” 占5%, “编程” 占7%, “测试” 占15%, “运行维护” 占67%,而测试成本所占的比例还在逐渐上升。


2. 软件缺陷的定义:



产品说明书是软件开发小组的一个协定,它对开发的产品进行定义,给出产品的细节,如何做,做什么,不能做什么。这种协定从简单的口头到正式的书面文档有多种形式。软件缺陷并非是软件未按预期目标运行这样简单,只有至少满足下列 5 个规则之一,才称为软件缺陷

A:软件未实现产品说明书要求的功能

B:软件出现了产品说明书中指明不应该出现的错误

C:软件实现了产品说明书未提到的功能

D:软件未实现产品说明书虽未明确提及但应该实现的目标

E:软件难以理解、不易使用、运行缓慢,或者从测试员的角度看,最终用户会认为不好


关于第三点说明如下:软件实现了产品说明书未提到的功能,这些预料不到的操作,虽然有了更好,但会增加测试工作,甚至可能带来更多的缺陷。


3. 软件缺陷的来源及修复成本:



导致软件缺陷最大的原因是产品说明书:产品说明书常常没写好——不要忘了,说不出来就做不出来。其他原因是产品说明书虽然有,但是不完整,不停更改,或者产品说明书内容没有和开发小组其他成员沟通。

软件缺陷的第二大来源是设计:这是程序员规划软件的过程,好比建筑师为建筑物绘制蓝图。这里产生缺陷的原因与产品说明书是一样的:随意,易变,沟通不足。

编码是第三大引入缺陷的原因:代码错误可归咎于软件的复杂性,文档不足,进度压力和普通的低级错误。一定要注意,许多看上去是编程错误的软件缺陷,实际上是由于产品说明书和设计方案造成的。

剩下的缺陷课归为一类:某些缺陷产生的原因是把误解(即把本来正确的)当成缺陷,还有可能缺陷多出反复出现,实际上是由一个原因引起的,一些缺陷可以归咎于测试错误。不过此类缺陷只占极小比例。


软件通常要靠有计划、有条理的开发过程来实现。从开始到计划、编程、测试,到公开使用的过程中,都有可能发现软件缺陷。

从  说明书 --> 设计 --> 编码 --> 测试 --> 发布的过程中,随着时间推移,软件缺陷的修复费用成指数地增长(十倍地增长)。例如在早期编写产品说明书时发现并修复缺陷,费用只要1美元甚至更少,同样的缺陷如果知道软件编写完成,测试时才发现,修复费用可能要10 - 100美元。


4. 软件测试员的目标:


软件测试员的目标是:尽可能早地找出软件缺陷,并确保其得以修复

“修复” 缺陷并非指一定要改正软件。可以是指在用户手册中增加一段注释或为用户提供特殊培训等。





你可能感兴趣的:(学习笔记,软件测试,软件缺陷,软件测试员)