> 文章列表 > 测试管理之测试计划

测试管理之测试计划

测试管理之测试计划

       

目录

1.测试计划

2、制定测试计划相关的测试活动

2.1选择测试策略

2.2确定测试优先级

2.3定义测试方法

2.4确定测试文档关系

2.5确定开发工作产品和测试工作产品之间的关系

2.6确定测试范围

2.7确定测试环境

2.8了解外部以来关系


测试计划阶段的主要活动包括:识别测试目标、测试任务,以及为实现测试目标和任务而确定的必要的测试活动和资源。

1.测试计划

        软件项目启动时就需要进行测试计划相关的活动,并贯穿整个软件测试生命周期,直到完成测试结束活动。制定测试计划的目的是通过确定测试任务、定义测试对象和详细的测试活动来达到组织的目标和使命。针对不同的测试级别,例如,例如集成测试或系统测试,需要制定不同的测试计划,并且文档化。

        测试计划制定过程中需要识别所需的测试活动和测试资源。并且包括识别、收集和跟踪测试度量项的方法,这些度量项将用于指导软件项目、确定与测试计划之间的符合程度,以及评估是否达到定义的测试目标等。测试计划阶段确定合理有用的度量项,可以有效地帮助测试团队选择测试工具、安排培训和构建测试文档。

        测试计划的制定需要考虑各种因素的影响,例如:组织的质量方针和测试方针、测试范围、测试目标、测试相关风险、测试约束条件和资源的可用性。随着软件项目的不断推进和深入,测试经理将获得更多的项目信息和具体细节,并基于这些信息对测试计划的内容进行更新,即测试计划的制定是个持续的过程,需要在整个测试过程中进行不断的调整和更新,例如,根据从测试活动中得到的反馈信息,可以识别测试过程中存在的新的风险,从而针对测试计划中的风险部分内容做相应的修改。

2、制定测试计划相关的测试活动

2.1选择测试策略

        测试策略描述了组织或软件项目采用的测试方法,包括产品风险和项目风险管理、测试级别和阶段定义,以及确定测试的概要活动等,根据测试活动开始时间的不同,测试策略可以分为预防型策略(尽早设计测试用例以及预防缺陷)和应对型策略(测试活动在软件产品实现后开始)。

        测试计划中选择的策略,有助于测试经理确定在测试过程中应进行的测试任务。例如:采用基于风险的测试策略,测试经理和测试人员可以通过风险分析指导测试过程中的风险识别、风险缓解、风险评估等活动,以降低产品风险,并帮助制定风险的应急措施。例如在测试过程中发现多个严重程度高的安全性相关的问题,则测试团队应花费更多的工作量设计和执行安全性测试。同样,例如发现软件产品的设计规格说明中存在严重缺陷,则在测试活动中可以安排合适的人员参与该文档的评审。

2.2确定测试优先级

        软件测试的一条基本原则是:穷尽测试是不可能的。因此,测试经理必定面临如何在有限时间和资源的情况下开展测试活动的问题。另外,测试团队经常面临的一个问题是:开发团队经常会延迟交付软件版本给测试团队,从而导致测试团队只能压缩测试时间以满足软件产品版本及时发布的困境。此时,将测试任务和测试活动进行优先级的划分,并将测试资源分配到重要的地方是测试经理可以采取的一种有效方式。

        测试过程中可以采用多种不同的测试技术,帮助测试经理确定测试活动和任务的优先级,例如,基于风险的测试策略、基于需求的测试策略等。假如采用基于风险的测试策略,可以尽早识别软件产品的产品风险,并基于该风险的可能性和严重程度得到的风险级别确定不同测试活动和任务的优先级。,例如,当软件产品的性能的风险级别较高,测试团队在获得软件版本之后,尽早进行性能测试。而基于需求的测试策略,被测对象的测试依据中定义的需求优先级,可以作为测试活动和优先级安排的重要参考。类似地,如果测试过程中采用了应对型的测试策略,测试团队必须尽早创建测试章程以确定测试范围和内容,以及准备动态测试所需的测试工具。

2.3定义测试方法

        测试经理在测试计划阶段应清楚地定义测试方法,包括采用的测试级别、每个测试级别的测试目标以及每个测试级别使用的测试技术。例如,甲方要求代码注释覆盖率需要达到50%以上,此时需要使用Source code instrumentation等工具进行覆盖率检测,黑盒测试使用边界值法、等价类划分法等。

2.4确定测试文档关系

        测试活动不是孤立存在的,在测试依据(报价单、合同、立项文档、需求文档、原型图等、测试条件(能够通过一个或多个测试用例进行验证的条件或事件)和覆盖测试条件的测试用例之间可能存在复杂的关系,并且这些工作产品之间常常存在一对或多对多的关联。

        测试计划阶段必须并且测试依据、测试条件和测试用例之间的对应关系,测试经理才能基于上述关系选择合理的测试工具,以及基于上述对应关系进行后续的测试监督和控制。

2.5确定开发工作产品和测试工作产品之间的关系

        开发团队与测试团队在软件开发生命周期中输出的工作产品之间也存在关联,例如,可追溯性矩阵需要跟踪设计人员的详细规格说明、业务分析人员的业务需求与测试团队定义的测试工作产品之间的关系。

        测试经理制定测试计划时,必须以软件工作产品作为重要输入和基础。软件开发生命周期中主要的软件工作产品包括:项目合同、产品范围说明、项目计划文档、用户需求规格、系统需求规格说明、系统设计规格说明、模块设计规格说明等。

2.6确定测试范围

        针对不同的测试级别,其测试关注的范围和重点不一样。因此不同测试级别应该列出本次计划需要覆盖的测试内容,同时测试计划中也要说明不在本次测试范围的产品特性。主要测试范围根据是项目合同及项目计划文档。

2.7确定测试环境

        测试环境包括测试人员使用的终端(电脑、平板或者手机等)、浏览器、测试环境部署的测试软件、中间件、数据库等;还有测试使用的工具及版本。

2.8了解外部以来关系

        测试经理应在测试计划阶段识别所有的外部以来关系和相关的服务级别协议。例如,电商系统使用物流及电子面单时,需要调用快递100及快递鸟等接口,基于企业微信开发时,需要使用企业微信API,在测试企业微信自建代开发应用,需要创建测试企业,购买接口等,都需要提前申请资源。

2.9定义测试出口准则

        定义测试出口准则也是测试计划中的一个重要内容,其目的是确定什么时候可以技术测试。

        (1)测试完整性度量,例如,代码、功能或风险的测试覆盖率;

        (2)缺陷密度、测试趋势或系统可靠性的度量;

        (3)继续测试的成本度量,评估继续测试的收益和结束测试的风险之间的平衡关系;

        (4)基于剩余风险的度量,例如,评估没有被修改的缺陷、在某些区域测试覆盖率较低等可能导致的项目风险或产品风险;

        (5)软件产品交付时间的度量,例如,客户要求的软件产品交付时间或者测试计划规定的截止时间等。