软件测试
上一篇 /
下一篇 2007-10-24 23:41:11
- 文件版本: V1.0
- 开发商: 本站原创
- 文件来源: 本地
- 界面语言: 简体中文
- 授权方式: 免费
- 运行平台: Win9X/Win2000/WinXP
软件测试的工作框架
软件测试的基本组织原则为:
a.成立独立的测试组织,以实现第三方测试(IV&V)的要求。
具体实现时可以采用:专职为主、兼职为辅和交叉测试的策略。
b.软件测试工程化、规范化。
包括:统一制订软件测试的方法与规范;重视软件测试文档的编制;明确定义软件测试环境,同时有重点地设计和开发软件测试工具。
c.实现有效的测试过程管理。
包括:测试资源(数据与程序)的配置管理;测试/回归测试的自动/半自动化执行;测试报告的自动/半自动化生成。
d.重视测试结果与测试结果的利用。
包括:加强结果收集统计和分析;指导软件进展和质量评估。
根据基本组织原则,软件测试的工作框架包括三个部分:软件测试在软件系统研制过程中的定义(外部联系);软件测试的组织策略(内部结构);软件测试的过程控制(内部联系)。前两部分的定义相对稳定,是软件测试计划与管理的重点,以下分析和介绍其中的内容。
2.1 软件测试在软件系统研制过程中的定义
在软件测试工作之初,组织者应与其他有关人员协调,以正确定位以下内容:
a. 软件测试在软件研制中的作用;
b. 软件测试活动与其它软件研制活动的关系;
c. 软件测试的对象;
d. 软件测试组织与软件开发组织界面;
e. 软件更动控制流程。
2.2 软件测试在软件研制中的作用
软件测试的意义在于:
a. 发现软件错误;
b. 有效定义和实现软件成分由低层到高层的组装过程;
c. 验证软件是否满足任务书和系统定义文档所规定的技术要求;
d. 为软件质量模型的建立提供依据。
即软件测试包括“找错”、“组装”、“确认”和“评估”四个层次的作用。
2.2.1 软件测试活动与其它软件研制活动的关系
图1描述了软件研制过程中各种活动的输入/输出关系。可以看到:软件测试是软件质量管理活动之一;软件测试组织通过软件配置管理组织获得其测试对象:软件产品(文档/代码/文件)或其中间形式;软件测试结果通过软件配置管理组织返回给软件开发组织;测试结果是软件质量控制的数据来源之一。
2.2.2 软件测试的对象
在大型软件系统中,软件成分被划分为多个层次。所有参加测试的人员都应了解其面对的软件系统的构成,同时清楚自己实现哪些部分、哪些方面的测试。
各类系统定义文档是软件测试的依据,它们定义了各层次软件成分的功能/性能/实现的要求。必要时,测试组织者应及时汇集、整理、完善软件系统的成分树/森林,明确各层次软件成分的具体内容。当然,这部分信息也可能由其它组织提供。
2.2.3 软件测试组织与软件开发组织的界面
软件测试组织与软件开发组织的界面指:软件开发组织完成编码、调试、集成后通过软件配置管理组织移交给软件测试组织的软件成分的层次,简称“软件测试界面”。
对低于软件测试界面的软件成分进行的排错的过程一般被称为“软件调试”;而对高于软件测试界面的软件成分进行的找错的过程被称为“软件测试”,其修改的过程被称为“软件更动”。
一旦软件成分被提交到配置管理库中,则对其的修改就必须遵循软件更动控制规范,将涉及不少人员,媒体转移较频繁,软件修改周期也较长。因此代码的测试不应过分依赖于测试组织,即:开发组织提交的软件成分应足够稳定。为了减少整个软件测试过程(发现问题—改动软件)的人力/物力/时间的消耗,测试组织与开发组织应达成共识:尽可能提高软件测试界面。定义较高软件测试界面的益处还在于:有利于开发组织更加主动关注其软件开发过程的质量控制;同时,还有利于测试组织集中时间和资源来执行软件高层测试(功能/性能的确认)。
2.2.4 软件更动控制规范
由图1知:软件测试的对象是已置于软件配置管理控制之下的软件成分(程序、数据、文档及各类受控的文件)。软件更动控制是软件配置管理的主要任务之一。
当软件开发/测试/维护人员发现软件问题(与软件配置管理项相关的软件错误、软件不一致或未知原因的软件异常状态)时,须填写软件问题报告,按照软件更动控制流程/算法,进入软件更动循环,产生相应的软件更动申请/报告。因此软件更动控制规范应包含:软件更动控制流程/算法、软件问题报告和软件更动申请/报告的格式。
由于软件更动控制与软件回归测试的内在联系紧密,因此测试组织应参与制订软件更动控制规范,以使该规范能在适用于系统的前提下更节省软件研制的总消耗。
2.3 软件测试的组织策略
在软件测试的管理中,以下内容的定义反映测试工作的组织策略:
a.软件测试遵循的标准;
b.软件测试的工作范畴;
c.软件测试环境;
d.软件测试产品;
e.适用于软件测试活动的软件资源标识规则;
f.软件测试的进度安排。
2.3.1 软件测试遵循的标准
组织者在指定范围内选择软件测试遵循的标准,并结合本软件系统的具体要求,使之贯彻到整个软件测试的计划、实现和管理过程之中。根据标准,需要被明确的内容包括:测试阶段和测试文档类型。
可以从三个角度来划分测试阶段:面向测试操作类型的阶段划分、面向测试操作对象的阶段划分、面向测试实施者的阶段划分。测试操作类型包括:调试、集成、确认、验证、组装、验收、操作等。测试操作对象可以是:单元、部件、配置项、子系统、系统等。测试实施者可以是:开发者、测试者、使用者、验收者等。各类标准从不同角度定义测试评审阶段,而测试组织者可以在符合所选标准的同时,结合多个划分因素规定本系统的测试阶段。
各标准规定的测试文档类型也不尽相同。如国标《软件产品开发文件编制指南》规定了两类测试文档:测试计划、测试分析报告;国标《计算机软件测试文件编制规范》定义了八类测试文档:测试计划、测试设计说明、测试用例说明、测试规程说明、测试项传递报告、测试日志、测试事件报告、测试总结报告;《XXXX软件工程化技术文件》定义了三类测试文档:测试计划、测试说明、测试报告。我们认为最后这种规定较易操作:因为,太少的测试文档类型不利于有步骤有层次地定义测试内容,也不利于测试用例和测试例程的良好表达;太多的测试文档类型易使测试组织陷入到繁杂的文档规范和编制中去;而第三种定义较为适中。其中:测试计划在系统分析/设计阶段提交,着重定义测试的资源、范围、内容、安排、通过准则等;测试说明在测试计划明确后开始编制,针对软件需求和设计要求具体定义测试用例和测试规程;测试报告分析和总结测试结果,测试日志是其必要附件。
2.3.2 软件测试的工作范畴
软件测试工作包括两个层次:
a. 测试工作的组织与管理,包括:制定测试方法与规范、控制测试进度、管理测试资源。
b. 测试工作的实施,包括:编制符合标准的测试文档、研制测试环境、与开发组织协作实现各阶段的测试活动。
软件测试工作可以分为四个方面:
a.测试管理。测试小组是质量保证组织的一个成分,因此测试管理工作应被置于软件质量管理工作范围内。
b.测试计划。独立的测试组织负责定义软件测试的方法与规范。开发组织负责编制单元测试的计划和说明;测试组织主要负责编制其它各测试阶段的测试计划和说明。
c.测试实施。测试实施组织的作用是:按测试计划与测试说明的定义对测试对象进行相应的测试;填写测试报告中相应的表格。
d.测试评审。依据软件测试评审准则在各测试阶段评审时提交类型完整的测试文档。
2.3.3 软件测试环境
软件测试环境包括设计环境、实施环境和管理环境。
软件测试设计环境指:编制测试计划/
相关阅读:
- Visual Studio Team System测试深入探讨 (51testing, 2007-10-22)
- 测试基础综合知识 (51testing, 2007-10-22)
- 火狐三界面走性感路线 放弃统一跨平台外观 (51testing, 2007-10-23)
- 芯片测试和底层开发的一点点体会 (51testing, 2007-10-23)
- ATM机设计测试案例 (51testing, 2007-10-23)
- 软件测试[(美)ron patton]读书笔记 (51testing, 2007-10-23)
- 度量软件过程 (51testing, 2007-10-23)
- 软件测试 (51testing, 2007-10-23)
- 软件测试心理学 - 兴趣 (陈能技, 2007-10-23)
- 性能测试、负载测试、压力测试等网搜及总结 (hua307, 2007-10-23)
收藏
举报
TAG:
软件测试
计划与管理
软件问题
软件测试计划
压力测试