




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本堂课讲授重点,确认测试 白盒测试技术,确认测试,确认测试的概念 确认测试的范围 软件配置复查 Alpha和Beta测试,确认测试的概念,确认测试的目标是验证软件的有效性 验证:“保证软件正确地实现了某个特定要求的一系列活动” 确认:“为了保证软件确实满足了用户需求 而进行的一系列活动” 软件的有效性:如果软件的功能和性能如同用户所合理期待的那样,软件就是有效的 需求分析阶段产生的软件需求规格说明书是进行确认测试的基础,确认测试的范围,必须有用户积极参与,以用户为主进行。用户应该参与设计测试方案,使用用户界面输入测试数据并且分析评价测试的输出结果 通常使用黑盒测试法 保证软件: 能满足所有功能
2、要求 能达到每个性能要求 文档资料准确完整 能满足其他预定的要求(如安全性、可移植性、兼容性、可维护性等),软件配置复查,保证软件配置所有成分齐全,包括: 可行性研究报告 需求分析规格说明书 总体设计说明书 详细设计说明书 源代码清单 测试计划、测试方案、测试结果 同时,质量符合要求,文档与程序完全一致,具有完成软件维护所必须的细节,已经编好目录。还有用户手册的完整性合正确性。,Alpha和Beta测试,大型通用软件,在正式发布前,通常需要执行Alpha和Beta测试, Alpha测试是内测, Beta测试是公测。 Alpha测试Alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内
3、部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由程序员或测试员完成。Alpha测试发现的错误,可以在测试现场立刻反馈给开发人员,由开发人员及时分析和处理。目的是评价软件产品的功能、可使用性、可靠性、性能和支持。尤其注重产品的界面和特色。,Beta测试由软件的最终用户在一个或多个客户场所进行,开发者通常不在Beta测试现场。 Beta测试是软件在开发者不能控制的环境中的“真实”应用,用户记录在Beta测试过程中遇到错误,并且定期把这些问题报告给开发者。开发者对软件产品进行必要的修改和升级,最后将软件产品交付给全体用户使用。Beta测试着重于产品的支持性,包括文档、客户培训和支持产
4、品的生产能力。只有当Alpha测试达到一定的可靠程度后,才能开始Beta测试。,Alpha测试举例,2004年3月,微软Bill Gates证实,微软年内将拿出官方Alpha测试版的Longhorn操作系统,微软Bill Gates也同时证实,Longhorn要到2006年才能正式上市销售。微软这款下一代桌面操作系统将内建DirectX 10,并且采用3D操作界面,采用WinFS文件系统,采用新一代安全机制。,白盒测试技术,问题提出 概念 白盒测试技术主要包括: 逻辑覆盖 控制结构测试,白盒测试概念,白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否
5、按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路(虽然这是不可能的)是否都有能按预定要求正确工作,而不顾它的功能。 测试方案:包括具体的测试目的,应该输入的测试数据和预期的结果 测试用例:测试数据和预期的输出结果,测试数据,不同的测试数据发现程序错误的能力差别很大 不可能进行穷尽的测试 应该选用高效的测试数据,提高测试效率降低测试成本。设计测试数据的技术包含白盒测试时设计测试数据的技术和黑盒测试时设计测试数据的技术。,问题提出,“我们应该更注重于保证程序需求的实现,为什么要花费时间和精力来担心(和测试)逻辑细节?” 逻辑错误和不正确假设与一条程序路径被运行的可能性
6、成反比。当我们设计和实现主流之外的功能、条件或控制时,错误往往开始出现在我们的工作中。日常处理往往被很好地了解(和很好地细查),而“特殊情况”的处理则难于发现。 我们经常相信某逻辑路径不可能被执行,而事实上,它可能在正常的基础上被执行。程序的逻辑流有时是违反直觉的,这意味着我们关于控制流和数据流的一些无意识的假设可能导致设计错误,只有路径测试才能发现这些错误。,例如,考虑 100行C语言程序,在一些基本的数据声明之后,程序包含两个嵌套循环,根据输入的条件分别执行1到20次,在内部循环中,需要四个if-then-else结构,该程序中大约有1014条可能路径! 为了正确表达这个数值,我们假设开发
7、了一个有魔力的测试处理器(“有魔力”是因为不存在这样的处理器)进行穷举测试。该处理器能在一毫秒内开发一个测试用例、进行运行并评估结果,如果每天运行24小时,每年运行365天,则需要3170年的时间来测试这个程序。不可否认,这将导致大多数开发进度表的混乱,对大型软件系统不可能进行穷举测试。 然而,白盒测试不应该被抛弃,可选择有限数量的重要逻辑路径进行测试,检测重要数据结构的有效性,逻辑覆盖,定义:是对一系列测试过程的总称,这组测试过程逐渐进行越来越完整的通路测试 包括如下: . 语句覆盖 . 判定覆盖 . 条件覆盖 . 判定条件覆盖 . 条件组合覆盖 . 点覆盖 . 边覆盖 . 路径覆盖。,(A
8、1) and (B=0),(A=2) or (X1),X=X/A,X=X+1,T,T,F,F,a,b,d,c,e,测试路径图,L1 ( a c e ) = (A1) and (B=0) and (A=2) or (X/A1) = (A1) and (B=0) and (A=2) or (A1) and (B=0) and (X/A1) = (A=2) and (B=0) or (A1) and (B=0) and (X/A1) ,L2 ( a b d ) = not(A1) and (B=0) and not(A=2) or (X1) = not (A1) or not (B=0) and n
9、ot (A=2) and not (X1) = not (A1) and not (A=2) and not (X1) or not (B=0) and not (A=2) and not (X1) ,L3 ( a b e) = not (A1) and (B=0) and (A=2) or (X1) = not (A1) or not (B=0) and (A=2) or (X1) = not (A1) and (A=2) or not (A1) and (X1) or not (B=0) and (A=2) or not (B=0) and (X1) ,L4 ( a c d ) = (A1
10、) and (B=0) and not (A=2) or (X/A1) = (A1) and (B=0) and not (A=2) and not (X/A1),测试路径逻辑,语句覆盖,语句覆盖就是设计若干个测试用例,运行被测程序,使得每一可执行语句至少执行一次。 在图例中,正好所有的可执行语句都在路径L1上,所以选择路径 L1设计测试用例,就可以覆盖所有的可执行语句。 测试用例的设计格式如下 【输入的(A, B, X),输出的(A, B, X)】 为图例设计满足语句覆盖的测试用例是: 【(2, 0, 4),(2, 0, 3)】 覆盖 ace【L1】,(A=2) and (B=0) or (
11、A1) and (B=0) and (X/A1) ,判定覆盖,判定覆盖就是设计若干个测试用例,运行时,使得程序中每个判断的取真分支和取假分支至少经历一次。 判定覆盖又称为分支覆盖。 对于图例,如果选择路径L1和L2,就可得满足要求的测试用例: 【(2, 0, 4),(2, 0, 3)】覆盖 ace【L1】 【(1, 1, 1),(1, 1, 1)】覆盖 abd【L2】,条件覆盖,条件覆盖就是设计若干个测试用例,运行时使得程序中每个判断的每个条件的可能取值至少执行一次。 在图例中,我们事先可对所有条件的取值加以标记。例如, 对于第一个判断: 条件 A1 取真为 ,取假为 条件 B0 取真为 ,取
12、假为,对于第二个判断: 条件A2 取真为 ,取假为 条件X1 取真为 ,取假为 测试用例 覆盖分支 条件取值 【(2, 0, 4),(2, 0, 3)】 L1(c, e) 【(1, 0, 1),(1, 0, 1)】 L2(b, d) 【(2, 1, 1),(2, 1, 2)】 L3(b, e),判定条件覆盖,判定条件覆盖就是选取足够多的测试数据,使得判定表达式中的每个条件都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果,测 试 用 例 覆盖分支 条件取值 【(2, 0, 4),(2, 0, 3)】L1(c, e) 【(1, 1, 1),(1, 1, 1)】L2(b, d),(A=2
13、) and (B=0) or (A1) and (B=0) and (X/A1),not (A1) and not (A=2) and not (X1) or not (B=0) and not (A=2) and not (X1),条件组合覆盖,条件组合覆盖就是设计足够的测试用例,运行被测程序,使得每个判断的所有可能的条件取值组合至少执行一次。 记 A1, B0 作 A1, B0 作 A1, B0 作 A1, B0 作, A2, X1 作 A2, X1 作 A2, X1 作 A2, X1 作 测 试 用 例 覆盖条件 覆盖组合 【(2, 0, 4), (2, 0, 3)】(L1) , 【(2
14、, 1, 1), (2, 1, 2)】(L3) , 【(1, 0, 3), (1, 0, 4)】(L3) , 【(1, 1, 1), (1, 1, 1)】(L2) , ,逻辑覆盖总结:,语句覆盖对程序的逻辑覆盖很少 判定覆盖比语句覆盖强,但是对程序逻辑的覆盖程度仍然不高,上面的测试数据只覆盖了程序全部路径的一半。 条件覆盖通常比判定覆盖强,因为它使判定表达式中每个条件都取到了两个不同的结果,判定覆盖却只关心整个判定表达式的值。 判定/条件覆盖也并不一定比条件覆盖更强 条件组合覆盖是更强的逻辑覆盖标准,但是,满足条件组合覆盖标准的测试数据并不一定能使程序中的每条路径都执行到。,点覆盖,如果连通图
15、 G 的子图G是连通的,而且包含G的所有节点,则称G是G的点覆盖。 与语句覆盖标准相同。,边覆盖,如果连通图 G 的子图G是连通的,而且包含G的所有边,则称G是G的边覆盖。 通常与判定覆盖标准相同。,路径覆盖,路径测试就是设计足够的测试用例,覆盖程序中所有可能的路径。 测 试 用 例 通过路径 覆盖条件 【(2, 0, 4), (2, 0, 3)】 ace (L1) 【(1, 1, 1), (1, 1, 1)】 abd (L2) 【(1, 1, 2), (1, 1, 3)】 abe (L3) 【(3, 0, 3), (3, 0, 1)】 acd (L4),控制结构测试,基本路径测试 条件测试
16、循环测试,基本路径测试,基本路径测试是在程序控制图的基础上,通过分析控制构造的环行复杂性,导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每一个可执行语句至少执行一次(如让循环体只执行一次)。 例子,基本路径测试例子,void Sort(int iRecordNum,int iType) 1 2 int x=0; 3 int y=0; 4 while (iRecordNum 0) 5 6 if(0= =iType) 7 x=y+2; 9 else 8 if(1= =iType) 10 x=y+10; 12 else 11 x=y+20; 13 14 ,环形复
17、杂度,第二步:计算环形复杂度,环形复杂度是一种为程序逻辑复杂性提供定量测度的软件度量,将该度量用于计算程序的基本的独立路径数目,为确保所有语句至少执行一次的测试数量的上界。独立路径必须包含一条在定义之前不曾用到的边。 有以下三种方法计算圈复杂度: 流图中区域的数量对应于环型的复杂性; 给定流图G的圈复杂度V(G),定义为V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量; 给定流图G的圈复杂度V(G),定义为V(G)=P+1,P是流图G中判定结点的数量。,第三步:导出测试用例,根据上面的计算方法,可得出四个独立的路径: 路径1:4-14 路径2:4-6-7-14 路径3:4-6-8-10-13-4-14 路径4:4-6-8-11-13-4-14 根据上面的独立路径,去设计输入数据,使程序分别执行到上面四条路径。,第四步:准备测试用例,为了确保基本路径
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国高空作业平台租赁服务行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国驱虫气雾剂行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国飞机和机动车辆轮胎氮气发生器行业市场发展趋势与前景展望战略研究报告
- 2025-2030中国预涂膜行业市场深度调研及前景趋势与投资研究报告
- 4S店二手车业务培训
- 维护积极心态的复习策略税务师试题及答案
- 考查2024年药剂类考试试题及答案
- 农村矿山开采合同样本
- 公交问题面试题及答案
- 考试科目一试题及答案
- 粉末冶金调机员培训
- 学校结核病防治工作制度
- 《H水电站水能规划与防洪设计》18000字(论文)
- 建筑施工现场突发事件应急预案及要求措施
- 阿拉善盟社区工作者招聘真题2024
- 村卫生室管理培训
- 安全培训创伤急救
- 2025山西地质集团招聘37人笔试参考题库附带答案详解
- 企业安全知识培训课件
- 用款申请单模板
- 《三字经》全文拼音版
评论
0/150
提交评论