测试过程
1.1测试过程
计划和控制
分析和设计
实施和执行
评估出口准则和报告
测试活动结束
1.2测试计划/监督和控制
1.2.1测试计划包括:
1. 定义的任务和目标所需的活动和资源
2. 识别/收集和跟踪度量项的方法
度量项的作用:
1. 指导项目/确定与计划的符合程度以及评价达成目标的情况
2. 可有效的帮助选择工具
3. 安排培训
4. 建立文件指南
(
软件度量是软件过程改进的基础,如果没有对目前的状态作出度量,那么就谈不上作改进,当然如果没有对改进后的过程作度量比较,也无法知道过程改进的效果。那么,在软件项目的度量中应该主要度量哪些指标呢?
对于一个组织,要对组织内的所有项目进行度量,则可以从几个主要指标入手,如:软件项目规模(Size)、工作量(Effort)、工期(Schedule)、质量(Quality)。SEPG组成员对收集到的所有项目的这些指标进行分析解释,可以作为过程改进的依据,也可以作为以后项目估计的基础。
这四个指标是项目主要的度量指标,当然根据组织需求可以加入其它的度量指标。这个是组织内的度量。而对于针对一个项目中的度量,则可以根据想达到的目标,选择不同的度量指标,如想提高软件生产率,则需要度量生产率指标,想提高软件测试效率,则应该度量软件测试效率等等。项目度量不应该盲目度量,选择度量指标应根据要解决的问题,否则,事倍工半,不仅得不到有意义的数据,而且会挫败参与者的积极性
)
测试计划阶段的任务:
确定一个或多个策略
如:风险策略/安全性测试策略
测试经理在此阶段的任务:
1. 定义测试方法
(1. 采用的测试级别)
(2. 每个级别的目标以及使用的测试技术)
测试级别:单元/集成/系统/验收测试
1.2.2测试监督和控制
1.进行高效的测试控制所采取的措施:
建立测试进度计划监督框架跟踪工作产品和质量
监督框架包括:1.测试工作产品的状态和活动
2.计划和战略目标相关联所需的详细的度量项和目标
2.测试控制(是持续的行为)包括什么
1.实际进度与测试计划的比较,在需要时实施纠正错误
2.在需要时再次进行的测试计划活动
3.测试控制中对数据的相应反应依赖于详细计划的信息
4.准确的监督依据度量项
1.3测试分析
什么是测试分析
测试分析是以测试条件的形式来确定要测试“什么”的活动
怎么识别测试条件
通过分析测试依据/测试目标和产品风险来识别测试条件
描述测试条件的详细程度时,需考虑以下因素:
1. 测试级别
2. 测试依据的详细程度和质量
3. 系统/软件的复杂度
4. 项目和产品风险
5. 测试依据间的关系-哪些是要测试,以及如何进行测试
6. 所采用的软件开发周期
7. 采用的测试管理工具
8. 测试设计和其他测试工作产品进行说明和文档化程度
9. 测试分析任意所掌握的技术和知识
10. 测试过程和组织自身的成熟度/成熟性
(更高的成熟度/成熟性要求详细程度更高,也可能接受低一些的详细程度)
11. 能提供咨询的其他项目干系人的可用性
详细说明测试条件的优点:
1. 有助于增加其他测试工作产品(如测试用例)与测试依据和测试目标相联系的灵活性,以便为测试经理提供更好更详细的监督和控制
2. 在一个较高级别测试项目的早期,只要测试依据存在,并在系统架构和详细设计可用之前对测试条件进行详细说明有助于预防缺陷
3. 以大众理解的语言解释测试工作产品
4. 有助于影响和指导其他测试活动,以及开发活动
5. 能够更有效覆盖详细的度量项和目标,使得测试设计/实施和执行以及相应工作产品得到优化
6. 为可追溯性提供以及
详细说明的缺点
1. 花费大量时间
2. 在变更的环境中维护性变得困难
3. 流于形式并需要整个团队来定义和实施
以下情况详细测试条件会特别有效
1. 适应开发周期/成本/时间限制或其他因素,采用少量测试设计文档方法-如检查表
2. 没有或只有很少正式需求或其他开发工作产品为测试依据
3. 项目规模大/负责/风险高,需要一定的监督和控制,而这样的监督和控制不能简单的通过将测试用例和开发工作产品相关联来实现
测试依据可直接与测试设计工作产品相关联,以下情况可简单描述测试条件:
1. 组件级别测试
2. 不复杂项目,实现逻辑简单
3. 可借助用例来定义测试的验收测试
1.4测试设计
概念:
定义如何“测试”的活动
测试设计包含什么:
1.测试策略
2.测试计划中确认测试技术
3.识别测试条件
4.测试依据来生成测试用例
1.5测试实施
什么时测试实施
测试分析师组织测试和设置测试优先次序的活动
是将测试设计实施为具体的测试用例/测试规程/测试数据的活动
测试规程规格说明定义测试步骤
测试用例规格说明定义输入和相应的预期结果
测试实施包括什么
建立已存储的测试数据(如在平面文件或数据库表格中)
测试实施检查的目的
确保测试组已经准备好执行测试
测试实施检查包括什么
1. 确保提供所需的测试环境/测试数据和代码(可能运行某个测试环境/代码验收测试)
2. 对照设计的几倍检查显性和隐形的入口准则
3. 测试环境和测试数据的详细描述
测试执行进度计划包括什么
手动测试和自动化测试的顺序
测试经理应检查的内容:风险和优先级
了解和检查随测试环境或测试数据的依赖关系
1.6测试执行
什么时候可以执行测试
一旦提交测试对象并且满足测试执行的入口准则
测试执行之前做什么
进行设计或定义
测试执行期间测试经理职责
按照测试计划监督进展
如有需要-启动和执行控制实施以引导测试的任务/目标和策略朝着成功的方向发展
测试经理完成职责可采用的方法:
从测试结果回到测试条件/测试已经和最终测试目标的追溯性,以及测试目标向前到测试结果的追溯性
1.7评估出口准则和报告
获取信息的途径
测试计划/监督/控制的一部分
测试分析/测试实施/测试执行的过程中,测试经理应确保负责这些活动的测试组的成员准确和及时的提供所需的信息,以便推动有效的评价和报告
1.8测试结束活动
测试结束活动的类别:
1. 检查测试是否完成--确保所有的测试工作已经结束
2. 交付测试产品--向软件产品的人员交付有价值的工作产品
3. 总结经验教训----主持或参与回顾会议
会议记录内容:测试项目和整个软件开发生命周期中的重要经验教训
问题无法解决,需考虑以下问题:
1. 参加质量风险分析讨论会中的用户代表范围要足够广泛
2. 估算要准确-----积累估算经验数据,在以后估算中加入
3. 缺陷的趋势以及缺陷的原因和影响分析的结果
4. 是否存在潜在的改进机会
5. 是否有预期的与计划之间的偏差
4.在配置管理系统中归档所有的结果/积累/报告和其他文档及工作产品