系统测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目标: 检查系统安装是否能够安装所有需要的文件/ 数据并进行必要的系统设置; 检查系统安装是否会破坏其他文件或配置; 检查系统安装是否可以中止并恢复现场; 检查系统是否能够正确卸载并恢复现场; 检查安装和卸载过程的用户提示和功能是否 出现错误
11
有时候将安装测试作为功能测试的一部分
系统测试的常见内容
17、度量测试
目标:在系统中人为地放入错误(播种),并根据 被发现的比例来确定系统中遗留的错误数量 开始用于测试外包,现在也用于内部测试
21
系统测试
认识系统测试
系统测试的常见内容
18、比较测试
目标:与竞争产品及本产品的旧版本测试同样的 内容,来确定系统的优势和劣势 严格地说,比较测试属于系统测评的内容 BenchMarking是一种特殊的比较测试
35
系统测试
测试设计
1、理解软件和测试目标
成果:
2、建立测试策略和初步测试计划
在了解测试目标和资源限制之后,按照错
误的性能价格比制定设计测试用例的优先 级,并确定初步的测试计划
36
系统测试
测试设计
1、理解软件和测试目标
成果:
3、确定测试结束标准(退出机制)
已经解决的错误没有重现 所有缺陷报告已经关闭 所有测试用例全部执行完毕 遗留的未发现错误数量可以被接受 错误播种 错误发生曲线分析 历史数据 市场和管理因素、预算和时间用完因素 不属于技术层层面的结束标准 实质上是测试失败或者部分失败的表现
系统测试的常见内容
1、功能测试
目标:对产品的功能进行测试,检验是否实现、 是否正确实现 方法:覆盖产品的功能 工具:回归测试时候可以使用工具
5
系统测试
认识系统测试
系统测试的常见内容
2、性能测试
目标:对产品的性能进行测试,检验是否达标、 是否能够保持 方法:覆盖系统的性能需求,一般和负载测试结 合使用 工具:在需要大访问量时候尤其需要使用工具
《软件质量保证和测试》
系统测试
系统测试
系统测试内容
认识系统测试 测试设计
软件攻击
测试流程 测试工具 系统测试演练
2
系统测试
认识系统测试
什么是系统测试
为了发现缺陷并度量产品质量,按照系统的
功能和性能需求进行的测试
一般使用黑盒测试技术 一般由独立的测试人员完成
对于模块之间交互性比较强的软件,还会有
架来实施
智力:灵活性和技巧性 系统:计划性和流程性
29
系统测试
认识系统测试
系统测试中最关键的两个要素
测试设计
测试设计的主要任务是设计测试用例
测试用例库是一种经验的积累,是测试活动最宝贵的财富 测试用例的衡量标准:多、快、好、省
软件攻击是在系统测试中常用的一种设计测试用例的 思路
系统测试员和用户不同的地方
使用软件的目的
测试员是发现错误,他的每一个操作都是为这个目的服务的 用户是获得功能,他的每一个操作都是为这个目的服务的 测试员希望看到错误,他的每一个操作都是为了使软件出错 用户不希望看到错误,他的每一个操作都会尽量避免使软件 出错
24
对待错误
系统测试
认识系统测试
测试员的效率
平均每个工作日发现3-5个Bug 平均每修正3个Bug,会引进1个新的Bug 平均75%的Bug会在单元测试阶段解决掉 平均20%的Bug会在集成测试和系统测试阶段解决掉
平均5%的Bug会被交付给用户
普通大型民用软件平均错误率5个/10,000LOC 电信/银行/操作系统等软件平均错误率5个/100,000LOC
14
系统测试
认识系统测试
系统测试的常见内容
11、恢复测试
目标:在人为使发生系统灾难(系统崩溃、硬件 损坏、病毒入侵等)的情况下,检查系统是否能 够恢复被破坏的环境和数据
15
系统测试
认识系统测试
系统测试的常见内容
12、回归测试
目标:检查系统变更之后是否引入新的错误或者 旧的错误重新出现,尤其是在每次Biuld之后和 稳定期测试的时候 工具:一般使用工具,一般依赖于测试用例库和 缺陷报告库
25
系统测试
认识系统测试
测试团队
测试团队一般4-5人,否则应该细分为测试组 测试经理/测试组长
制定测试计划和测试方案 分配测试任务并检查测试进度 代表测试团队与开发、产品、用户沟通 实际测试
设计测试用例 执行测试用例并填写缺陷报告 检查缺陷处理结果
26
测试员
系统测试
Exchange2000 程序经理25人;开发人员140人;测试人员350人 Windows2000:$50亿 程序经理250人;开发人员1700人;测试人员3200人 IE4.0 开发时间6个月,测试时间8个月
28
系统测试
认识系统测试
系统测试的客观要求
系统测试需要以智力为核心、以系统为框
40
系统测试
测试设计
3、运行测试用例并处理测试结果
9
系统测试
认识系统测试
系统测试的常见内容
6、易用性测试
目标:检查系统界面和功能是否容易学习、使用 方式是否规范一致,是否会误导用户或者使用模 糊的信息 一般与功能测试结合使用 方法:可以采用用户操作、观察(录像)、反馈并 评估的方式
10
系统测试
认识系统测试
系统测试的常见内容
7、安装测试
14、交付测试
目标:关闭所有缺陷报告,确保系统达到预期的 交付标准 方法:一般需要结合回归测试,并谨慎处理新出 现的Bug 交付测试也称为稳定期测试,有时候与系统测试 独立划分
18
系统测试
认识系统测试
系统测试的常见内容
15、演练测试
目标:在交付给用户之前,利用相似的用户环境 进行测试
6
系统测试
认识系统测试
系统测试的常见内容
3、负载测试
目标:在人为设置的高负载(大数据量、大访问 量)的情况下,检查系统是否发生功能或者性能 上的问题 方法:人为生成大数据量,并利用工具模拟频繁 并发访问 工具:一般需要使用工具
7
系统测试
认识系统测试
系统测试的常见内容
4、压力测试
测试设计步骤既强调目的性也强调计划性
目标是追求测试效率和测试结果 文档化和按部就班一般会降低管理难度,增强计划性 文档化和按部就班有时候会适得其反,尤其是扼杀测
试人员的经验作用和灵感
32
系统测试
测试设计
1、理解软件和测试目标
目的:
建立软件故障模型,了解测试目标,来确定测试策 略和测试计划
小型系统或者系统的简单功能
因果图分析法 边界值分析法
No Silver Bullet
39
系统测试
测试设计
2、设计测试用例
结果:
测试用例
没有标准文档格式 对于特殊人(Ad Hoc)在特殊情况下可以在运行后才形 成文档 包含的要素: 标题和编号、版本号、修改记录等 针对目标和假设前提/可能发现的错误 输入和数据/代码 测试步骤 预期输出和错误发现方法 IE4.0的测试用例数目:10万
系统测试
认识系统测试
系统测试的常见内容
8、配置测试
目标:在不同的硬件配置下,在不同的操作系统 和应用软件环境中,检查系统是否发生功能或者 性能上的问题 方法:一般需要建立测试实验室,IE4.0测试实 验室建立花费了$200万
12
系统测试
认识系统测试
系统测试的常见内容
9、文档测试
目标:检查系统的文档是否齐全,检查是否有多 余文档或者死文档,检查文档内容是否正确/规 范/一致,检查CI是否正确… 方法:一般由单独的一组测试人员实施
13
系统测试
认识系统测试
系统测试的常见内容
10、安全测试(包括病毒、加密、权限)
目标 检查系统是否有病毒 检查系统是否正确加密 检查系统在非授权的内部或外部用户访问或 故意破坏时候是否出现错误
认识系统测试
测试与开发的关系
独立
MSF 破与立 在目标上:Shipping on Date/Quality/Scope/Cost
对立
统一
27
系统测试
认识系统测试
测试与开发的比例
与产品大小、复杂度、质量要求相关
目前国内比例平均为1:6 2000年M$全球52000人,利润$300亿,10000开发 人员,15000测试人员,测试费用占研发费用的60%
例如:奥运会MIS系统在2008年前用于其他比赛
19
系统测试
认识系统测试
系统测试的常见内容
16、背靠背测试
目标:设置一组以上的测试团队,在互相不进行 沟通的情况下独立进行相同的测试项目,用来评 估测试团队的效果并发现更多的错误 开始用于测试外包,现在也用于内部测试
20
系统测试
认识系统测试
熟悉软件功能 确定软件基本可以测试
了解软件体系结构、技术选型、开发环境和工具 阅读早期版本测试报告,以及单元和集成测试报告 确定测试人员限制和时间限制,制定初步测试策略 和测试计划,确定测试结束标准
34
系统测试
测试设计
1、理解软件和测试目标
成果:
1、建立错误模型,指导回答以下问题: 该软件可能的错误会出现在哪里? 用户环境与测试环境不一致 没有测试过的代码或功能 没有测试过的输入组合、极端环境或者功能 使用方法、使用顺序 如何做才能发现这些错误?
目标:在人为设置的系统资源紧缺情况下,检查 系统是否发生功能或者性能上的问题 方法:人为减少可用的系统资源,包括:内存、 硬盘、网络、CPU占用、数据库反应时间… 工具:一般需要使用工具
8
系统测试
认识系统测试
系统测试的常见内容
5、疲劳测试
目标:在一段时间内(经验上一般是连续72小时) 保持系统功能的频繁使用,检查系统是否发生功 能或者性能上的问题 方法:人为设置不同功能的连续重复操作 工具:一般需要使用工具
测试流程
系统测试的控制过程 系统测试的度量过程
30
系统测试
内容
认识系统测试 测试设计
软件攻击
测试流程 测试工具 系统测试演练
31
系统测试
测试设计
测试设计步骤
1、理解软件和测试目标 2、设计测试用例
3、运行测试用例并处理Hale Waihona Puke Baidu试结果
4、评估测试用例和测试策略
16
系统测试
认识系统测试
系统测试的常见内容
13、健全测试
目标:检查系统的功能和性能是否基本可以正常 使用,来确定是否可以继续进行系统测试的其他 内容 方法:正常安装,并使用正常情况下的测试用例 对主要功能进行测试;同时检查系统文档是否齐 全
17
系统测试
认识系统测试
系统测试的常见内容
22
系统测试
认识系统测试
系统测试的常见内容
实际上,以上18种测试内容并不是都要进行
的,而是在制定测试策略和测试计划的时候 有不同的侧重点,这与测试目标、测试资源、 软件系统特点和业务环境有关。
23
系统测试
认识系统测试
系统测试员和用户相似的地方
都是使用软件,一般不接触软件的代码 都是假设软件应该正确实现说明书的功能
单独的集成测试,用来发现模块接口之间的 错误
3
系统测试
认识系统测试
客户和用户
Customer
v.s. User
都是利益相关者,但是终极关注的是客户
客户是衣食父母,不是上帝
尊重客户的需求
与客户沟通,让他理解你的困难和方案,给
他咨询
客户是人,人就会犯错误
4
系统测试
认识系统测试
任务:
了解软件的功能和业务背景、用户环境 了解软件的开发背景和系统结构、技术选型 了解软件的质量历史、版本变化 了解测试目标和资源限制 确定测试策略和测试计划
33
系统测试
测试设计
1、理解软件和测试目标
方法:
阅读软件使用手册,理解软件运行环境和用户行为, 了解同类软件的功能和使用,了解软件要解决的问 题域和解域(业务背景知识) 试运行软件
37
系统测试
测试设计
2、设计测试用例
目的:
设计尽可能多、快、好、省发现错误的测试
用例
任务:
理解故障模型
理解现有的测试用例库 设计具体的测试用例
38
系统测试
测试设计
2、设计测试用例
方法:
软件攻击法
基于故障模型 经验 历史数据/错误 软件开发和运行环境 需要创造性思维 要注意保证充分性(多、快、好、省) Testing is a War