软件测试过程及其管理
2015-09-29 19:50
225 查看
软件测试过程及其管理
6.1.软件测试过程定义软件测试过程要求基于项目的整体需求,对整个测试生命周期中的所有过程、活动及变更进行定义、控制和管理;
6.2.软件测试过程模型
6.2.1.V模型
①概念:软件生命周期包括需求、设计、编程、测试、安装/集成、维护等过程但测试又是贯穿整个生命周期的从需求分析阶段就开始了。V模型左侧是软件开发过程右侧是软件测试过程,强调软件开发的协作和速度,将软件实现与验证有机地结合起来在保证较高的软件质量情况下缩短软件开发周期。V模型是软件生命周期开发瀑布模型的变种,它反映了测试活动与分析和设计关系,从左到右,描述了基本的软件生命周期的开发过程和测试行为。
②它反映了测试活动与分析和设计的关系;
③特点:·是传统的软件开发瀑布模型的变种;
·将测试作为开发工作的后续工作;
·将不同阶段的测试和不同阶段的开发工作形成对应;
④局限性:他仅仅把测试过程作为在需求分析、概要设计、详细设计以及编码之后的一阶个段,容易使人理解为测试是软件开发的最后 一个阶段,从而需求设计中影藏的问题一直到后期才被发现;
6.2.2.W模型
①概念:V模型的局限性在于没有明确地说明早期的测试,不能体现“尽早地和不断地进行软件测试”的原则。基于“尽早地和不断地进行软件测试”的原则,在软件需求和设计阶段的测试活动应遵循的原则。设计出W模型。它强调:测试伴随着整个软件开发周期,而且测试的对象不仅是程序,需求、功能和设计同样要测试。可以说测试与开发同步进行。
②特点:·相对于V模型,W模型更科学;
·强调测试伴随着整个软件开发周期,测试的对象不仅仅是程序,需求、功能和和设计同样要测试;
·将测试工作独立出来,与开发同步进行,有利于尽早地发现问题;
③局限:它与V模型都把软件的开发视为一系列串行的活动,是开发和测试保持一种线性的前后关系,无法支持迭代、自发性以及变更调整;
6.3.软件测试过程中的主要活动
(1)提取测试需求;
(2)制定测试计划;
(3)制定测试策略和方案;
(4)开展测试设计;
(5)执行测试用例;
(6)分析测试结果;
6.4.测试过程的主要内容
①基于项目目标,制定测试计划,确定测试计划,确定测试策略,选定测试方法,排定优先级,建立里程碑,组织测试资源(测试团队、软硬件环境等)等;
②基于测试计划,明确测试需求、测试对象和测试目标及功能与性能指标;
③依据测试计划和测试设计,测试人员可以开展测试的相关活动;
6.5.TMM:测试成熟度模型,描述测试的过程。
五个级别:初始级;定义级;集成级;管理和测量级;优化、预防缺陷和质量控制级;
6.6.测试用例的作用
(1)指导测试的实施;
(2)规划测试数据的准备;
(3)编写测试脚本的“设计规格说明书”;
(4)评估测试结果的度量基准;
(5)分析缺陷的标准;
6.7.编制测试用力的方法
(1)编写测试用例文档;
(2)测试用例的设置;
(3)设计测试用例;
(4)对测试用力的评审;
(5)测试用例的修改更新;
6.8.软件测试过程主要工作内容
(1)项目启动:确定项目组长,进行项目的前期准备;
(2)测试需求分析:以软件开发需求为基础,形成可测试的内容;
(3)制定测试计划:确定测试范围、测试策略和方法,以及对风险、日程表、资源等进行分析和评估;
(4)测试设计和开发:制定测试的技术方案、设计测试用例、选择测试工具、写测试脚本等,并且进行评审;
(5)测试实施和执行:建立或设置相关的测试环境,准备测试数据,执行测试用例,并提交发现的缺陷;
(6)测试结果的审查和分析:分析测试结果,确定产品质量,提供发布依据;
相关文章推荐
- Android之使用Http协议实现文件上传功能
- 通晓网络测试常用命令
- Nodejs学习笔记之测试驱动
- 可以测试javascript运行效果的代码
- 使用php测试硬盘写入速度示例
- python 测试实现方法
- 举例详解PHP脚本的测试方法
- Php-Redis安装测试笔记
- mysql压力测试脚本实例
- JavaScript 组件之旅(四):测试 JavaScript 组件
- Android触屏测试实例代码
- 解析libcurl在android下的移植、编译与测试
- 几个比较实用的JavaScript 测试及效验工具
- Java中对AtomicInteger和int值在多线程下递增操作的测试
- Python实现测试磁盘性能的方法
- python自动化测试实例解析
- Python之PyUnit单元测试实例
- Appium自动化测试系列2- 写一个Python测试脚本来测试一下YY语音
- IOS UI Automation 学习之常用类,方法和模拟手势
- 测试时尚