技术开发 频道

Rational SDP助产品成熟度第二级实施(二)


3.2.3.3 测试管理自动化和缺陷跟踪平台

    测试管理是指对系统测试活动的管理,其主要目的是测准(有效选择运行测试用例,发现系统的缺陷)和测全(保证所有需求对被测试过)。 

    不同阶段的测试的依据是以其上游输出的工作产品为依据,测试人员只有准确把握需求信息,才能进行有效的测试。同时,测试人员的职责不仅仅是发现缺陷,还有帮助开发人员重现并解决缺陷的义务,应该为开发人员提供缺陷的相关信息,以帮助开发人员快速定位并解决问题。因此,测试管理不仅仅以测试用例为核心,还应考虑对需求和缺陷信息的管理,并建立需求、测试用例、测试脚本以及缺陷的关联。 

    测试管理自动化的主要目的是通过ClearQuest自动能获得软件质量以及测试过程的相关信息,从而及时有效地指导软件测试。 

    通过测试管理自动化,测试人员能把更多精力关注在如何设计有效的测试用例,如何有效选择执行测试用例,从而保证系统质量。 

    软件开发过程中开发与测试由独立进行,有利于客观的找出软件中存在的问题。但是这种独立也会产生问题,每个独立单位都倾向于从自身任务出发,而不是从以最短的时间、最低的缺陷水平把产品提供给顾客的整体目标出发。常常像有一面无形的墙把开发和测试群体分开,开发部门把它的产品通过看不见的抛给测试部分,并等待测试部门在测时发现问题;然后测试部门又把代码通过墙抛回给开发部门,还附带一系列要修改的问题。这种“通过墙扔过去”的态度最终后果是开发部门花更多的时间去改正错误,而测试部分花更多的时间试图逮住错误,在这种情况下,通常送测都要反复多次,因此测试的时间得不到控制。正如下图表4-17所示,由此带来的产品质量总是很低下。



图表 3 17 缺陷与产品质量 

    所以,军工单位借助ClearQuest的以下优势建立测试管理自动化和缺陷跟踪平台可以快速弥补这方面的劣势: 
   
 协调测试过程中的测试活动、测试资产(Asset)和测试人员
 追踪测试资产之间的依赖关系
 迭代地进行测试计划、测试执行和测试评估
 知道当前被测试系统的质量
 定义、测量和跟踪系统的质量目标
 自动化测试管理
 跟踪测试计划和测试用例
 跟踪需求和缺陷
 执行测试
 测量测试进度 
   
    测试管理自动化和缺陷跟踪带来的好处是: 
   
 提供了集中查看整个项目状态的实时视图
 记录了开发、测试和项目工件之间的可追踪、可审计的关系,如图3-18所示
 管理项目计划、测试结果、质量度量和缺陷
 集成了版本控制的集中存储库
 提供了广泛的度量报告
 需求 <-> 测试用例的追踪
 缺陷 <-> 测试用例的追踪
 测试日志 <-> 需求的关联
 缺陷 <-> 测试日志的关联
 建立需求到测试、缺陷的追踪关系,实现软件开发的闭环



图表 3 18 缺陷跟踪平台 

    以上平台满足并具体化了军工单位的软件测试过程和软件问题处理过程的如下目标和关键活动: 
   
1. 软件测试过程
a) 目标 

    软件测试过程活动的目标是由测试用例生成测试程序,通过执行测试程序发现软件问题。软件测试过程使用的软件测试方法包括单元测试、集成测试、系统测试、验收测试、回归测试等等。软件测试过程包括测试程序编写和调试、测试程序和测试结果评审、结构覆盖分析、测试报告生成等活动。
不同的项目,可根据项目的规模、可提供的资源、经费、软件等级选择部分或全部测试步骤。可以针对测试对象的不同特点采用不同的技术,发现不同特征的错误,使软件在多层次测试中不断提高质量。 
   
b) 输入 
   
——软件需求规格说明
——接口需求规格说明
——软件设计文档
——接口设计文档
——软件测试说明
——过去类似项目的测试程序 

    c) 活动 
   
 设计和调试测试程序。有了测试用例后,就可以按照软件开发计划和/或软件测试计划中指定的测试程序设计方法设计测试程序。测试程序要在测试计划规定的测试环境下进行调试。 
   
 评审测试程序和测试结果。测试程序调试结束后,保存运行结果。按照软件同行评审的过程和方法,对照检查单对完成的测试程序和测试结果进行评审。测试程序和测试结果检查单的格式见附录G 
   
 覆盖分析。覆盖分析分两步进行,即基于需求的覆盖分析和结构覆盖分析。第一步分析与软件需求有关的测试用例,以证实所选的测试用例满足指定的准则。第二步证实基于需求的测试程序测试了代码结构。覆盖分析按照覆盖分析检查单进行,格式见附录G。 
   
 生成软件测试报告。整个测试过程的最后步骤是生成软件测试报告。软件测试报告是对整个测试过程的总结,包括下列内容:使用的资源环境、测试方法、测试用例、测试结果、所发现的错误、对被测软件的分析。 
   
 测试过程中发现问题的处理。在评审、分析、测试用例编写、测试程序编写和调试执行等一系列测试步骤中,若发现被测软件有问题,按照规定的格式填写被测软件问题报告单。若为独立的第三方测试。该报告要按照事先规定的要求,提交给专门的问题报告处理组织。若为开发测试,则由开发者按照项目规定的问题报告处理步骤处理,如先由专家组确定是否是问题,影响如何,如何更改,由谁完成更改,计划完成更改时间等,然后由程序设计者实施更改,直至最终解决问题。 

    2. 软件问题处理过程 
   
a) 目标 

    软件问题处理过程活动的目标是记录、分析、更改、跟踪、解决软件中发现的问题。 
   
b) 输入 
   
——软件问题报告单 
   
c) 活动 
   
 由设计师系统确认所发现的问题。
 项目负责人向有关人员通报问题及其状态。
 项目软件负责人指定专人解决问题,规定问题更改的完成日期。
 问题更改人员完成问题的更改,并按Q/4MG16.01的规定填写软件更改单。
 由测试人员进行回归测试,证明问题已改,并且未引发新的问题。
0
相关文章