【IT168 技术文章】
测试生命周期
测试计划 → 测试设计 → 测试开发 → 测试执行 → 测试评估
测试计划就是定义一个测试项目的过程,以便能够正确的度量和控制测试。
第一部分:测试计划
测试计划的问题:
1、测试计划经常是等到开发周期后期才开始实行,使得没有时间有效的执行计划;
2、测试计划的组织者可能缺乏Client/Server测试经验;
3、测试的量度和复杂性可能太大,没有自动化工具,很难计划和控制。
测试策略:
测试策略描述测试工程的总体方法和目标。描述目前在进行哪一阶段的测试(单元测试、集成测试、系统测试)以及每个阶段内在进行的测试种类(功能测试、性能测试、压力测试等)。
测试策略包括
1、要使用的测试技术和工具;
2、测试完成标准;
3、影响资源分配的特殊考虑例如测试与外部接口或者模拟物理损坏、安全性威胁。
测试计划最关键的一步就是将软件分解成单元,写成测试需求。
测试需求有很多分类方法,最普通的一种就是按照商业功能分类。把软件分解成单元元件有几个好处:
1、测试需求是测试设计和开发测试用例的基础,分成单元可以更好地进行设计;
2、详细的测试需求是用来衡量测试覆盖率的重要指标;
3、测试需求包括各种测试实际和开发以及所需资源。
怎样估计测试工作量:
1、效率假设:即测试队伍的工作效率。对于功能测试,这主要依赖于应用的复杂度,窗口的个数,每个窗口中的动作数目。对容量测试,主要依赖于建立测试所需数据的工作量大小。
2、测试假设:为了验证一个测试需求所需测试动作数目。
3、应用的维数:应用的复杂度指标。例如要加入一个记录,测试需求的维数就是这个记录中域的数目。
4、所处测试周期的阶段:有些阶段主要工作都在设计,有些阶段主要是测试执行。
测试资源:
1、人力资源
测试经理
为测试项目提供总体方向。开发测试计划、征集并监督测试人员、申请系统资源、监视并汇报工作进程、测试评估、测试需求的分解。
测试工程师 ---- 设计和开发
设计:对被测软件的详细了解、分解测试需求的技能、选择在C/S环境下用来验证测试需求的技术。
开发:熟悉SQA、VB、和脚本语言。
测试工程师 ---- 执行
负责测试执行和记录结果。需要能够安装系统,网络知识,初始化数据库和其他初始条件。重要的是诊断能力。
测试系统管理者
每个测试项目必须指定一个专人负责管理SQA Suite。包括在服务器上安装存储库,安装打印机连接,执行备份,以及其他维护工作。管理者必须高度熟悉SQA,网络工作经验。
2、系统资源
安装SQA Suite的硬件和软件环境
数据库服务器
该服务器必须专用于 测试工作,能够重置某些初始值,包括系统日期和时间等。
写测试计划的步骤:
1、确定工程
收集下列信息
文档 已创建(是/否) 版本/日期
需求详述
功能详述
项目计划
设计详述
原型
用户手册
定义新的工程,Adminà New Project。
确定软件的结构,用Assetsà Software Structure选项定义软件结构。
2、定义测试策略
测试策略项 例子
测试阶段 系统测试
测试类型 功能测试
测试技术 75%用SQA Suite自动测试,25%手工测试
完成标准 95%测试用例通过并且较高级缺陷全部解决
特殊考虑 测试必须在上午进行
3、分解软件,写测试需求
分析各种信息
反复检查并理解各种信息,和用户交流,理解他们的要求。可以按照以下步骤执行:
1、确定软件提供的主要商业任务
2、对每个商业任务,确定完成该任务所要进行的交易。
3、确定从数据库信息引出的计算结果。
4、对于对时间有要求的交易,确定所要的时间和条件。这些条件包括数据库大小、机器配置、交易量、以及网络拥挤情况。
5、确定会产生重大意外的压力测试,包括:内存、硬盘空间、高的交易率
6、确定应用需要处理的数据量。
7、确定需要的软件和硬件配置。通常情况下,不可能对所有可能的配置都测试到,因此要选择最有可能产生问题的情况进行测试,包括:最低性能的硬件、几个有兼容性问题的软件并存、客户端机器通过最慢的LAN/WANF连接访问服务器。
8、确定其他与应用软件没有直接关系的商业交易。包括:
管理功能,如启动和推出程序
配置功能,如设置打印机
操作员的爱好,如字体、颜色
应用功能,如访问email或者显示时间和日期。
9、确定安装过程,包括定置从哪安装、定制安装、升级安装。
10、确定没有隐含在功能测试中的户界面要求。大多界面都在功能测试时被测试到。还有写没有测到,如:操作与显示的一致性,如使用快捷键等;界面遵从合理标准,如按钮大小,标签等。
把需求组织成层次图
4、估计测试工作量
∑(每个测试的时间*每个需求的测试的数目*测试需求的的数目)
(测试设计、开发、….)