测试计划
文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改 | 文件标识: | Test-Department |
当前版本: | V1.0 | |
作 者: |
| |
完成日期: |
|
修订历史记录
版本 | 日期 | AMD | 修订者 | 说明 |
|
|
|
|
|
|
|
|
|
|
(A-添加,M-修改,D-删除)
1.简介
1.1确定测试范围
待定
所需文档:《软件需求说明文档》
文档中需包括:对测试对象(构件、应用程序、系统等)及其目标进行简要说明。需要包括的信息有:主要的功能和性能、测试对象的构架以及项目的简史
目标:确定现有项目的信息和应测试的软件构件,确定测试范围,包括测试对象中将接受测试或将不接受测试的那些性能和功能
1.2测试策略
鉴于本测试为基于web的系统测试,所以需额外测试系统在不同用户的浏览器端的显示是否合适以及从最终用户的角度进行安全性和可用性测试。因此在功能测试中需添加Cookies测试;性能测试中添加连接速度测试以及安全性测试。
注1:将负载测试和压力测试合并为压力测试
1.3所需资源和现有资源
待定
l 所需文档:《软件需求说明文档》
文档内容同上
参考需求:为真实模拟测试环境,需要测试各种上网方式下软件能否正常工作,如ADSL、拨号上网、无线上网等;还需要考虑远程测试(包括多台主机)等
现有资源:人力资源
[注:可适当地删除或添加角色项。]
角色 | 所推荐的最少资源(所分配的专职角色数量) | 具体职责或注释 |
|
|
|
|
|
|
|
|
|
|
|
|
测试环境
软件环境(相关软件、操作系统等) |
软件:MyEclipse 6.0;运行环境:JDK;操作系统:Windows 2003/XP/Vista;浏览器:IE6/IE7 |
|
硬件环境(网络、设备等) |
服务器系统:Fedora Linux |
|
|
测试工具
用途 | 工具 | 生产厂商/自产 | 版本 |
自动测试 | QuickTest | Mercury | Pro 8.2 |
|
|
|
|
|
|
|
|
1.4 测试流程要求
为便于归档,对bugtracker的提交要求如下:
1.列出进行测试的具体步骤(进行过何种测试);
2.列出测试失败的详细描述、原理分析、修改方法和修改结果;
3.提交规范的测试报告。
2. 测试进度
待定
3. 系统风险、优先级
待定
需简要描述测试阶段的风险和处理的优先级
4.测试策略
所需文档:《设计说明书》
文档中需包括:软件子系统划分、子系统间接口和错误处理机制
4.1 功能测试
l 概述:确保测试的功能正常,如导航,数据输入,处理、检索是否正确,以及业务规则的实施是否恰当。即对交互的输出或结果进行分析,以此来核实应用程序及其内部进程,这是目前的测试重点。
l 目标:利用有效的和无效的数据来执行各个用例流,以核实以下内容:
² 在使用有效数据时得到预期的结果
² 在使用无效数据时显示相应的错误消息或警告消息。
单一界面测试的参考表格如下:
编号
| 场景/条件
| 操作
| 预期结果
|
1.
| 用户通过用户界面输入信息 | 输入任何东西,重填 | 客户端页面恢复到初始状态 |
2.
| 用户通过用户界面输入信息 | 输入刚好等于字数限制的正确信息,提交 | 1.所填信息正确保存到相应的数据库表中 2.客户端提示提交成功 |
3.
| 用户通过用户界面输入信息 | 输入略超过字数限制的正确信息,提交 | 1.所填信息不能正确保存到相应的数据库表中 2.客户端提示字数超长 3.引导用户定位超长输入 |
4.
| 用户通过用户界面输入信息 | 输入略少于字数限制的正确信息,提交 | 1.所填信息正确保存到相应的数据库表中 2.客户端提示提交成功 |
5.
| 用户通过用户界面输入信息 | 输入非法字符,提交 | 1. 所填信息不能保存到相应的数据库表中 2. 客户端提示有错误输入 3. 引导用户定位错误输入 |
6.
| 用户通过用户界面输入信息 | 输入为空,提交 | 1.应有必填项判断 2.客户端提示必填项不能为空 3.引导用户定位必填项 4.所填信息不能保存到相应的数据库表中 |
7.
| 用户通过用户界面输入信息 | 该输入汉字的输入英文字符,提交 注:其余类同 | 1.客户端提示错误输入 2.引导用户定位错误输入项 3.所填信息不能保存到相应的数据库表中 |
具体功能测试参考表格如下:
功能A描述 |
| ||
用例目的 |
| ||
前提条件 |
| ||
输入/动作 | 期望的输出/相应 | 实际情况 | |
示例:典型值… |
|
| |
示例:边界值… |
|
| |
示例:异常值… |
|
| |
功能B描述 |
| ||
用例目的 |
| ||
前提条件 |
| ||
输入/动作 | 期望的输出/相应 | 实际情况 | |
…… | |||
注:除测试所提供的功能外,还需添加Cookies测试
参考如下:
Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。
如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响等。
4.2 用户界面测试
l 概述:用于核实用户与软件之间的交互是否正常
l 目标:核实下列内容
² 确保各种浏览以及各种访问方法(鼠标移动、快捷键等)都使用正常
² 确保窗口对象及其特征(菜单、大小、位置、状态和中心)都符合标准等
参考表格如下:
检查项 | 测试人员的类别及其评价 |
窗口切换、移动、改变大小时正常吗? |
|
各种界面元素的文字正确吗?(如标题、提示等) |
|
各种界面元素的状态正确吗?(如有效、无效、选中等状态) |
|
各种界面元素支持键盘操作吗? |
|
各种界面元素支持鼠标操作吗? |
|
对话框中的缺省焦点正确吗? |
|
数据项能正确回显吗? |
|
对于常用的功能,用户能否不必阅读手册就能使用? |
|
执行有风险的操作时,有“确认”、“放弃”等提示吗? |
|
操作顺序合理吗? |
|
按钮排列合理吗? |
|
导航帮助明确吗? |
|
提示信息规范吗? |
|
4.3‘探索或开放’型的测试
l 概述:不是按部就班的按照一个又一个正式的测试用例来进行,也不局限于测试用例特定的步骤。
l 目标:在理解该软件功能的基础上运用灵活多样的想象力和创造力去模拟用户的需求来使用该软件的多种功能(通常涉及很多的测试用例或者通过更复杂的步骤来使用该软件)。
参考表格如下:
测试项 | 测试目的 | 测试人员的类别及其评价 |
|
|
|
|
|
|
|
|
|
|
|
|
4.3 性能测试
l 概述:主要是对响应时间、事务处理速率和其他与时间相关的需求进行评测和评估。性能评测的目标是核实性能需求是否都已满足。
l 目标:核实下列情况下的性能行为:
² 正常的预期工作量
² 预期的最繁重工作量
l 需考虑的特殊事项:
² 可创建“虚拟的”用户负载来模拟许多个(通常为数百个)客户机。
² 最好使用多台实际客户机(每台客户机都运行测试脚本)在系统上添加负载。
² 应该在专用的计算机上或在专用的机时内执行,以便实现完全的控制和精确的评测。其所用的数据库应该是实际大小或相同缩放比例的数据库。
² 多用户不同网络条件下的连接速度是否满足要求
参考表格如下:
性能A描述 | 多用户不同上网方式下的测试 | ||
用例目的 |
| ||
前提条件 |
| ||
输入数据 | 期望的性能(平均值) | 实际性能(平均值) | |
|
|
| |
|
|
| |
|
|
| |
性能B描述 | 多用户不同距离条件下的测试 | ||
用例目的 |
| ||
前提条件 |
| ||
输入数据 | 期望的性能(平均值) | 实际性能(平均值) | |
…… | |||
| |||
4.4压力测试
l 概述:这里的具体包含了负载测试以及压力测试
l 目标:核实下列行为下的系统行为
² 确定测试对象在给定时间内能够持续处理的最大负载或工作量(包括长时间处理多个用户相同的且性能最坏的业务)
² 确定并确保系统在超出最大预期工作量的情况下仍能正常运行,并评估其性能特征,包括响应时间、事务处理速率和其他与时间相关的内容
² 服务器上几乎没有或根本没有可用的内存(RAM)
步骤一:执行单步任务测试
步骤二:多用户多任务测试
参考表格如下:
单步任务参考表格:
任务A描述 |
|
连续运行时间 |
|
故障发生的时刻 | 故障描述 |
|
|
|
|
…… |
|
统计分析 | |
任务A无故障运行的平均时间间隔 | (CPU小时) |
任务A无故障运行的最小时间间隔 | (CPU小时) |
任务A无故障运行的最大时间间隔 | (CPU小时) |
任务B描述 |
|
连续运行时间 |
|
故障发生的时刻 | 故障描述 |
|
|
|
|
…… |
|
统计分析 | |
任务B无故障运行的平均时间间隔 | (CPU小时) |
任务B无故障运行的最小时间间隔 | (CPU小时) |
任务B无故障运行的最大时间间隔 | (CPU小时) |
多用户多任务测试参考表格:
极限名称A | 最大并发用户数量
| ||
前提条件 |
| ||
输入/动作 | 输出/响应 | 是否能正常运行 | |
例如10个用户并发操作
|
|
| |
例如20个用户并发操作
|
|
| |
…
|
|
| |
极限名称B |
| ||
前提条件 |
| ||
输入/动作 | 输出/响应 | 是否能正常运行 | |
|
|
| |
…
|
|
| |
4.5故障恢复测试
l 概述:确保系统能从各种意外数据损失或完整性破坏的各种软/硬件故障中恢复。
l 目标:核实系统能够在下列状况下正确恢复到预期的已知状态
² 客户/服务机断电
² 网络通信中断
² 异常关闭某个功能
² 错误的操作顺序
参考表格如下:
异常输入/动作 | 恢复能力 | 造成的危害、损失 |
客户/服务机断电 |
|
|
网络通信中断 |
|
|
错误的操作顺序 |
|
|
异常关闭某个功能 |
|
|
… |
|
|
4.6安全性测试
l 概述:确保系统Web应用下的安全性
l 目标:核实下列情况下的性能行为
² 系统是否有超时的限制
² 相关的重要信息是否写进日志、是否可追踪
² 使用了安全套接字时,测试加密是否正确,信息是否完整
相关表格如下:
检查项 | 测试人员的类别及其评价 |
系统有超时限制吗?(如标题、提示等) |
|
相关的重要信息写进了日志吗?能有效跟踪他们吗? |
|
传输信息加密了吗? 传过来的信息完整吗? |
|
|
|
|
|
4.7配置测试
l 概述:核实测试对象在不同的软件和硬件配置中的运行情况
l 目标:确定系统能在下列条件下正常运行
² 在各种所需的硬件和软件配置中
² 在各种O/S平台或是浏览器下的兼容性测试
相关表格如下:
检查项 | 测试人员的类别及其评价 |
系统能在各种软/硬件条件下运行吗?具体有哪些呢? |
|
系统支持多种操作平台吗?支持多种浏览器吗? |
|
|
|
|
|
|
|
4.8回归测试
l 概述:根据修复好了的缺陷再重新进行的测试
l 目标:验证以前出现过但已经修复好的缺陷不再重新出现
相关表格如下:
检查项 | Bug是否改正 | 测试人员的类别及其评价 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|