测试经理需要了解的有关测试过程的知识

学习目标

  • 为了计划测试活动和工作产品来实现测试目标,必须对一个系统的测试需求进行分析
  • 实用可追溯性来检查与测试目标、测试策略和测试计划相关的已定义测试条件的完整性和一致性
  • 解释可能影响所规定测试条件详细程度的因素,以及详细规定测试条件的优点和缺点
  • 使用可追溯性来检查与已定义测试条件相关的所设计测试用例的完整性和一致性
  • 使用风险、优先级、测试环境和数据依赖以及限制条件来制定测试执行的进度,该进度针对测试目标、测试策略和测试计划是完整和一致的。
  • 使用可追溯性来监督测试进展与测试目标、测试策略和测试计划的一致性和完整性
  • 解释在测试过程中准确和及时信息收集的重要性,以便支持准确的报告和对照出口准则进行评价
  • 总结4组测试结束活动
  • 实现项目回顾以评价过程和发现改进领域。
术语
英文       中文 说明
exit criteria 出口准则 通过与利益干系人达成一致的一组通用和特定的条件,正式允许一个过程结束。设置出口准则的目的在于防止将没有完成的任务错误地看成已经完成。测试中使用出口准则来报告和计划什么时候可以停止测试
test case 测试用例 为特定目标或测试条件而制定的一组输入值、执行入口条件、预期结果和执行出口条件
test closure 测试结束 从已完成的测试活动中手机数据,总结居于测试件及相关事实和数据的测试结束阶段,包括对测试件的最终处理和归档以及测试过程评估(包括测试评估报告的准备)。
test condition 测试条件 组件/系统中能被一个或多个测试用例验证的条目或事件。例如,功能、事务、特性、质量特性或者结构化元素。
test control 测试控制 当监测到与预期情况背离时,制定和应用一组修正动作以测试项目保持正常进行的测试管理工作。
test design 测试设计 将测试目标转换成具体的测试条件和测试用例的过程。
test execution 测试执行 对被测组件/系统执行测试,产生实际结果的过程。
test implementation 测试实施 开发、排序测试规程,创建测试数据,必要时还包括准备测试用具和编写自动化测试脚本的过程

test log                      

测试日志 按时间顺序排列的有关测试执行所有相关细节的记录
test planning 测试计划 描述预期测试活动的范围、方法、资源和进度的文档。它标识了测试项、需测试的特性、测试任务、任务负责人、测试人员的独立程度、测试环境、测试设计技术、测试的进入和退出的准则和选择的合理性、需要紧急袁的风险,是测试策划过程的一份记录
test procedure         测试规程 测试规程指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试项名称、测试目的、预置条件、测试步骤、通过准则和测试用例。
test script 测试脚本 通常指测试规程说明,尤其对自动化测试
test summary report 测试总结报告 总结测试活动和结果的文档。也包括对测试项是否符合退出准则进行的评估

1.1简介

        软件测试贯穿整个软件开发生命周期,是与软件开发并行的一个完整的过程,测试的尽早介入是软件测试的基本原则。

测试过程包含下面5个阶段:

  • 测试计划和控制
  • 测试分析和设计
  • 测试实施和执行
  • 评估出口准则和报告
  • 测试结束活动

分解后

  • 计划、监督和控制
  • 分析
  • 设计
  • 实施
  • 执行
  • 评估出口准则和报告
  • 测试结束活动

        测试分析和设计、测试实施和执行阶段在事件上是可以有部分重叠的,而测试控制活动会贯穿于整个测试过程。

        根据软件产品的特点、开发模型、团队能力等的不同,测试团队需要对上述的测试过程进行合理的裁剪。

1.2测试计划、监督与控制

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

        测试监督阶段的狐妖活动包括:对测试过程中的各个测试活动进行监视,通过收集和分析测试活动的各种度量数据,以评估当前项目和测试的状态。

        测试控制阶段的主要活动包括:通过将测试监督获取的测试数据和状态,与测试计划中的目标和要求进行比较,例如两者之间出现偏差(大于测试计划中定义的偏差范围或阙值),测试经理需要采取必要的措施纠正偏差,以满足测试任务和目标要求。

1.3测试分析

        测试分析阶段的主要任务是确定测试“什么”,术语定义为“测试条件”,即通过测试分析活动输出一系列的测试条件。而如何测试测试条件的问题,将由测试设计阶段解决。测试人员既可以分析软件产品提供的测试依据,也可以考虑风险分析过程中识别的产品风险获取测试条件。同时,测试策略中定义的测试目标也是识别测试条件需要考虑的一个因素。测试分析过程需要考虑不同利益干系人在开发过程中的不同利益和视角。

        测试条件可以作为测试监控中的详细度量项的基础,针对测试条件的覆盖率要求也可以作为出口准则的一部分,通过在测试过程中检查测试条件的状态,以评估软件产品是否可以及时发布。

        为了通过测试分析得到有效的测试条件,测试经理需要明确回答下面的一些问题:哪些因素会影响测试条件的详细程度?测试条件详细化或简单化的优缺点是什么?什么场合下适合测试条件详细化或简单化?

1.4测试设计

        测试设计阶段是确定“如何”测试的活动。测试设计通过使用测试策略或者测试计划中定义的测试设计技术,有效地将识别的测试条件转化为测试用例。

        首先,测试分析师根据提供的需求规格说明获取图形化用户界面每个输入参数的有效值的定义。通过分析以前软件产品所发现的缺陷列表后,测试分析师发现其中的很多问题都与输入无效值有关,即在处理无效输入时经常出错。因此,测试分析师决定采用等价类划分和边界值分析,以获取无效的等价类和边界值,并作为设计测试用例的输入值。

        其次,确定测试用例的输入之后,还需要确定每个输入之后得到的期望结果。测试分析师将输入、操作步骤、和期望结果进行为文档化。

        第三,根据测试计划或者测试策略中定义的测试设计技术确定测试输入之后,测试团队面临的问题是生成概要测试用例,还是详细测试用例,测试分析师根据确定的详细程序开发测试用例。作为测试用例设计的重要组成部分,测试分析师必须确定测试用例运行所需的测试数据和测试环境。

        最后邀请相关干系人对测试用例、测试数据和测试环境进行评审,这样不仅能有效地尽早发现测试用例中的遗漏和问题,同时也可以让干系人了解测试的关注点,并能更好地获得他们的支持。完成测试用例、测试数据和测试环境之后,测试经理还需检查测试设计的出口准则。

1.5测试实施

        测试实施阶段的主要任务包括:概要测试用例转换为详细测试用例、设置测试还行优先级、准备测试数据、测试用例自动化、检查测试执行入口准则,以及确定测试执行进度。

1.6测试执行

        一旦满足测试执行的入口准则,测试团队就可以开始测试执行。

        当测试团队安装第一个软件测试版本之后,测试分析师和技术测试分析师就可以开始执行测试用例,测试分析师主要关注手工测试用例的运行,自动化测试用例的执行,可以是技术测试分析师的职责,也可以是在技术测试分析师的支持下,由测试分析师具体开展。

        测试执行的结果需要记录在测试日志中。(可以使用禅道或redmine等工具记录)假如测试执行实际结果和测试用例期望结果有差距,测试分析师需要确认是否是一个误报的错误还是一个缺陷。

        为了不断评估测试执行中发现的缺陷,定期的缺陷评审会议是必须的,业务干系人和技术干系人通常都需要参加,主要目的是确认提交的问题是否缺陷、缺陷严重程度、缺陷优先级、计划在哪个版本修复。

        业务人员和技术人员等需要根据测试日志提供的信息,评估测试进度和被测产品的质量。

1.7评估出口准则和报告

  • 将测试状态和测试计划中的出口准则进行比较
  • 评估是否需要更多的测试执行,或者是否需要更改测试出口准则
  • 输出测试总结报告。

主要输入包括:测试状态报告、缺陷状态报告、风险状态报告、测试周报告、月报告、测试出口准则和测试计划等。

1.8测试结束活动

        当确定测试结束后,应收集主要的输出成果,并且交给相应的人员或归档,这些活动称为测试结束活动。

测试结束活动主要包括以下4个方面:

  1. 确保所有的测试工作全部完成
  2. 移交测试工作产品
  3. 总结经验教训
  4. 在配置管理系统中归档所有的结果、记录、报表和其他文档及交付物。

猜你喜欢

转载自blog.csdn.net/python_jeff/article/details/121617136