ü 黑盒测试 (Black box testing) ── 不考虑内部设计和代码,根据需求和功能进行测试。
ü 白盒测试 (White box testing) ── 根据应用软件的代码的内部逻辑,按照代码的语句、分支、路径和条件进行测试。
ü 功能测试 (functional testing) ── 对一个应用软件的功能模块进行黑盒测试。这种测试应当由测试人员进行。但这并不意味着程序员在推出软件之前不进行代码检查。(这一原则适用于所有的测试阶段。)
ü 系统测试 ── 针对全部需求说明进行黑盒测试,包括系统中所有的部件。
ü 端到端测试 (end-to-end testing) ── 类似于系统测试,但测试范围更“宏观”一些。模仿实际应用环境,对整个应用软件进行使用测试。例如与数据库进行交互作业、使用网络通信、与其他硬件、应用程序和系统之间的相互作用是否满足要求。
ü 回归测试 (regression testing) ── 每当软件经过了整理、修改、或者其环境发生变化,都重复进行测试。很难说需要进行多少次回归测试,特别是是到了开发周期的最后阶段。进行此种测试,特别适于使用自动测试工具。
ü 负荷试验 (load testing) ── 在大负荷条件下对应用软件进行测试。例如测试一个网站在不同负荷情况下的状况,以确定在什么情况下系统响应速度下降或是出现故障。
ü 压力测试 (stress testing) ── 经常可以与“负荷测试”或“性能测试”相互代替。这种测试是用来检查系统在下列条件下的情况:在非正常的巨大负荷下、某些动作和输入大量重复、输入大数、对数据库进行非常复杂的查询,等等。
ü 性能测试 (performance testing) ── 经常可以与“压力测试”或“负荷测试”相互代替。理想的“性能测试”(也包括其他任何类型的测试) 都应在质量保障和测试计划的文档终予以规定。
ü 可用性测试 (usability testing) ── 是专为“对用户友好”的特性进行测试。这是一种主观的感觉,取决于最终用户或顾客。可以进行用户会见、检查、对用户会议录像、或者使用其他技术。程序员和测试人员通常不参加可用性测试。
ü 恢复测试 (recovery testing) ── 在系统崩溃、硬件故障、或者其他灾难发生之后,重新恢复系统的情况。
ü 安全测试 (security testing) ── 测试系统在应付非授权的内部/外部访问、故意的损坏时的防护情况。这需要精密复杂的测试技术。
ü α 测试 (alpha testing) ── 在开发一个应用软件即将完成时所进行的测试。此时还允许有较小的设计修改。通常由最终用户或其他人进行这种测试,而不是由程序员和测试人员来进行。
ü β 测试 (beta testing) ── 当开发和测试已基本完成,需要在正式发行之前最后寻找毛病而进行的测试。通常由最终用户或其他人进行这种测试,而不是由程序员和测试人员来进行。
“测试计划”一个软件项目的测试计划是一份文件,它说明了在进行软件测试过程中的目标、范围、方法、和重点。在准备测试计划的过程中,要通盘考虑在接受一个软件产品之前所必需进行的一切验证工作。
1目标
|
2概述
|
2.1项目背景
|
2.2范围
|
3组织形式
|
4角色及职责
|
5被测试特性
|
6不被测试特性
|
7测试方法
|
8测试通过/失败的标准
|
9测试挂起及恢复
|
10测试任务安排
|
10.1XX测试计划任务
|
10.2XX测试设计任务
|
10.3XX测试实现任务
|
10.4XX测试执行任务
|
11应交付的测试工作产品
|
12工作量估计
|
13资源
|
13.1人员及培训要求
|
13.2测试环境及测试工具
|
13.2.1测试环境
|
13.2.2测试工具
|
13.2.3测量仪器和设备
|
13.2.4器件和材料
|
13.2.5其它需求
|
14风险及应急计划
|
15附录
|
“测试案例”(测试用例):测试案例是一份文档,它描述了一个输入、反应、或者是与其相应的预期的响应,以便来判断应用软件的工作是否正常。测试案例应当包括测试标识、测试案例的名称、目标、测试条件/设置、输入数据要求、步骤、以及预期的结果。
在软件项目需求分析的同时进行软件系统测试测试计划和测试用例的制定。
用例编号
| 用例级别
| 输入
| 预期输出
| 实测结果
| 备注
|
对该测试用例分配唯一的编号标识
| 表明该用例的重要程度
| 列出执行本测试用例所需的具体的每一个输入(值)
| 列出所有预期指标要求下的具体预期输出(值)
| 此项在测试执行时填写。指明该测试用例是否通过。如果不通过,需列出实际测试时的测试输出值
| 如果有必要,则要填写“预置条件”、“特殊环境需求”、“特殊测试步骤要求”、“相关测试用例”以及“相关测试规程”等相关信息,具体见详细的注释说明
|
测试工具
易思博公司使用的测试工具与测试管理工具
| 工具
| 供应商
| 版本
|
测试管理
缺陷跟踪
| 1. 测试数据库管理系统
2. BuggitIssue Tracker
| 海南国信
PBSYSTEMS
| V2.0
V2.2
|
链接测试
| SQA SiteCheck
| Rational
| 6.1
|
性能测试
| Web Application Stress Tool
| Microsoft
| 1.1
|
面向对象的设计如何影响测试?
好的面向对象的工程设计使得从代码追溯内部设计、再到功能测试,最后追溯到需求,成为一件容易的事。因为它对黑盒测试的影响很少 (不需要了解应用软件的内部设计) ,而白盒测试只需针对该应用软件的对象。如果该应用软件设计得好,就可简化测试设计。
关于集成测试
集成测试的管理过程,阶段划分:
.1 集成测试计划阶段:
软件需求分析说明书完成,软件系统测试计划完成
.2 集成测试设计阶段:
软件概要设计完成,建立了概要设计基线
.3 集成测试实现阶段:
软件集成测试方案完成
.4 集成测试执行阶段:
软件实现与单元测试完成
集成测试的阶段与工作文档
.1 集成测试计划阶段:
《软件系统需求规格说明书》,《软件概要设计说明书》,《软件系统测试计划》
2 集成测试设计阶段:
《软件系统需求规格说明书》《软件概要设计说明书》,《软件详细设计说明书》,《软件集成测试计划》
.3 集成测试实现阶段:
《软件系统需求规格说明书》《软件概要设计说明书》,《软件详细设计说明书》,《软件集成测试方案》
.4 集成测试执行阶段:
《软件集成测试方案》《软件集成测试用例》《软件集成测试规程》《软件单元测试报告》、
集成测试的过程管理与过程活动
活动
| 输入
| 输出
|
计划集成测试
| -
| -
|
制定软件集成测试 计划
| 《软件系统需求规格说明书》
《软件概要设计说明书》
《软件系统测试计划》
| 《软件集成测试计划》
|
设计集成测试
| -
| -
|
制定软件集成测试方案
| 《软件系统需求规格说明书》
《软件概要设计说明书》
《软件详细设计说明书》
《软件集成测试计划》
| 《软件集成测试方案》
|
实现集成测试
| -
| -
|
更新软件集成测试方案
| 《软件集成测试方案》
| 更新的《软件集成测试方案》
|
编写集成测试用例
| 《软件集成测试方案》
| 《软件集成测试用例》
|
编写集成测试规程
| 《软件集成测试方案》
《软件集成测试用例》
| 《软件集成测试规程》
|
设计,实现和验证集成测试工具
| 《软件集成测试方案》
| 集成测试工具和相关设计文档,使用说明
|
设计,实现和验证集成测试代码
| 《软件集成测试方案》
| 集成测试代码和相关设计文档
|
执行集成测试
| -
| -
|
执行集成测试, 进行集成测试记录,填写测试规程
| 《软件集成测试方案》
《软件集成测试用例》
《软件集成测试规程》
| 《软件集成测试规程》(填写测试结果)
|
撰写集成测试报告,进行案例分析和总结
| 《软件集成测试方案》
《软件集成测试用例》
《软件集成测试规程》
| 《软件集成测试报告》
测试案例分析,测试总结
|
缺陷记录反馈和跟踪解决,进行问题管理
| -
| 缺陷报告,跟踪和解决记录
|
评审集成测试报告
| 《软件集成测试报告》
| 软件集成测试报告评审表
|
集成测试文档及测试代码,工具基线化
| 集成测试文档及测试代码,工具
| 基线化的集成测试文档及测试代码,工具
|
系统测试
系统测试的活动、步骤、输入、输出
活动
| 输入
| 输出
|
计划系统测试
| -
| -
|
制定软件系统测试计划
| 《软件开发计划SDP》
《软件测试计划SVVP》
《软件系统需求规格说明书》
| 《软件系统测试计划》
|
设计系统测试
| -
| -
|
制定软件系统测试方案
| 《软件概要设计说明书》
| 《软件系统测试方案》
|
实现系统测试
| -
| -
|
更新软件系统测试方案
| 《软件系统测试方案》
| 更新的《软件系统测试方案》
|
编写系统测试用例
| 《软件系统测试方案》
| 《软件系统测试用例》
|
制定软件系统预测试项
| 《软件系统需求规格说明书》
《软件系统测试方案》
| 《软件系统预测试项》
|
编写系统测试规程
| 《软件系统测试方案》
《软件系统测试用例》
| 《软件系统测试规程》
|
设计,实现和验证系统测试工具
| 《软件系统测试方案》
| 系统测试工具和相关设计文档
|
设计,实现和验证系统测试代码
| 《软件系统测试方案》
| 系统测试代码和相关设计文档
|
构造系统测试环境
| 《软件系统测试方案》
| 符合系统测试要求的测试环境
|
执行系统测试
| -
| -
|
软件系统测试预测试
| 《软件系统预测试项》
| 《软件系统预测试报告》
|
转系统测试评审
| 《产品总体方案书》
《软件需求规格说明书》
《软件设计说明书》 《软件版本特性说明书》
《软件版本特性列表》
《软件版本软硬件配套表》
《软件系统测试方案》《软件系统测试用例》
《软件集成测试报告》
《软件版本测试建议》
《软件系统预测试报告》
| 软件转系统测试评审表
|
执行系统测试, 进行系统测试记录,填写测试规程
| 《软件系统测试方案》
《软件系统测试用例》
《软件系统测试规程》
| 《软件系统测试规程》(填写测试结果)
|
撰写系统测试报告,进行案例分析和总结
| 《软件系统测试方案》
《软件系统测试用例》
《软件系统测试规程》
| 《软件系统测试报告》
测试案例分析,测试总结
|
缺陷记录反馈和跟踪解决,进行问题管理
| -
| 缺陷报告,跟踪和解决记录
|
评审系统测试报告
| 《软件系统测试报告》
| 软件系统测试报告评审表
|
系统测试文档及测试代码,工具基线化
| 系统测试文档及测试代码,工具
| 基线化的系统测试文档及测试代码,工具
|
面向对象的设计如何影响测试?
好的面向对象的工程设计使得从代码追溯内部设计、再到功能测试,最后追溯到需求,成为一件容易的事。因为它对黑盒测试的影响很少 (不需要了解应用软件的内部设计) ,而白盒测试只需针对该应用软件的对象。如果该应用软件设计得好,就可简化测试设计。
关于集成测试
集成测试的管理过程,阶段划分:
.1 集成测试计划阶段:
软件需求分析说明书完成,软件系统测试计划完成
.2 集成测试设计阶段:
软件概要设计完成,建立了概要设计基线
.3 集成测试实现阶段:
软件集成测试方案完成
.4 集成测试执行阶段:
软件实现与单元测试完成
集成测试的阶段与工作文档
.1 集成测试计划阶段:
《软件系统需求规格说明书》,《软件概要设计说明书》,《软件系统测试计划》
2 集成测试设计阶段:
《软件系统需求规格说明书》《软件概要设计说明书》,《软件详细设计说明书》,《软件集成测试计划》
.3 集成测试实现阶段:
《软件系统需求规格说明书》《软件概要设计说明书》,《软件详细设计说明书》,《软件集成测试方案》
.4 集成测试执行阶段:
《软件集成测试方案》《软件集成测试用例》《软件集成测试规程》《软件单元测试报告》、
集成测试的过程管理与过程活动
活动
| 输入
| 输出
|
计划集成测试
| -
| -
|
制定软件集成测试 计划
| 《软件系统需求规格说明书》
《软件概要设计说明书》
《软件系统测试计划》
| 《软件集成测试计划》
|
设计集成测试
| -
| -
|
制定软件集成测试方案
| 《软件系统需求规格说明书》
《软件概要设计说明书》
《软件详细设计说明书》
《软件集成测试计划》
| 《软件集成测试方案》
|
实现集成测试
| -
| -
|
更新软件集成测试方案
| 《软件集成测试方案》
| 更新的《软件集成测试方案》
|
编写集成测试用例
| 《软件集成测试方案》
| 《软件集成测试用例》
|
编写集成测试规程
| 《软件集成测试方案》
《软件集成测试用例》
| 《软件集成测试规程》
|
设计,实现和验证集成测试工具
| 《软件集成测试方案》
| 集成测试工具和相关设计文档,使用说明
|
设计,实现和验证集成测试代码
| 《软件集成测试方案》
| 集成测试代码和相关设计文档
|
执行集成测试
| -
| -
|
执行集成测试, 进行集成测试记录,填写测试规程
| 《软件集成测试方案》
《软件集成测试用例》
《软件集成测试规程》
| 《软件集成测试规程》(填写测试结果)
|
撰写集成测试报告,进行案例分析和总结
| 《软件集成测试方案》
《软件集成测试用例》
《软件集成测试规程》
| 《软件集成测试报告》
测试案例分析,测试总结
|
缺陷记录反馈和跟踪解决,进行问题管理
| -
| 缺陷报告,跟踪和解决记录
|
评审集成测试报告
| 《软件集成测试报告》
| 软件集成测试报告评审表
|
集成测试文档及测试代码,工具基线化
| 集成测试文档及测试代码,工具
| 基线化的集成测试文档及测试代码,工具
|
系统测试
系统测试的活动、步骤、输入、输出
活动
| 输入
| 输出
|
计划系统测试
| -
| -
|
制定软件系统测试计划
| 《软件开发计划SDP》
《软件测试计划SVVP》
《软件系统需求规格说明书》
| 《软件系统测试计划》
|
设计系统测试
| -
| -
|
制定软件系统测试方案
| 《软件概要设计说明书》
| 《软件系统测试方案》
|
实现系统测试
| -
| -
|
更新软件系统测试方案
| 《软件系统测试方案》
| 更新的《软件系统测试方案》
|
编写系统测试用例
| 《软件系统测试方案》
| 《软件系统测试用例》
|
制定软件系统预测试项
| 《软件系统需求规格说明书》
《软件系统测试方案》
| 《软件系统预测试项》
|
编写系统测试规程
| 《软件系统测试方案》
《软件系统测试用例》
| 《软件系统测试规程》
|
设计,实现和验证系统测试工具
| 《软件系统测试方案》
| 系统测试工具和相关设计文档
|
设计,实现和验证系统测试代码
| 《软件系统测试方案》
| 系统测试代码和相关设计文档
|
构造系统测试环境
| 《软件系统测试方案》
| 符合系统测试要求的测试环境
|
执行系统测试
| -
| -
|
软件系统测试预测试
| 《软件系统预测试项》
| 《软件系统预测试报告》
|
转系统测试评审
| 《产品总体方案书》
《软件需求规格说明书》
《软件设计说明书》 《软件版本特性说明书》
《软件版本特性列表》
《软件版本软硬件配套表》
《软件系统测试方案》《软件系统测试用例》
《软件集成测试报告》
《软件版本测试建议》
《软件系统预测试报告》
| 软件转系统测试评审表
|
执行系统测试, 进行系统测试记录,填写测试规程
| 《软件系统测试方案》
《软件系统测试用例》
《软件系统测试规程》
| 《软件系统测试规程》(填写测试结果)
|
撰写系统测试报告,进行案例分析和总结
| 《软件系统测试方案》
《软件系统测试用例》
《软件系统测试规程》
| 《软件系统测试报告》
测试案例分析,测试总结
|
缺陷记录反馈和跟踪解决,进行问题管理
| -
| 缺陷报告,跟踪和解决记录
|
评审系统测试报告
| 《软件系统测试报告》
| 软件系统测试报告评审表
|
系统测试文档及测试代码,工具基线化
| 系统测试文档及测试代码,工具
| 基线化的系统测试文档及测试代码,工具
|