版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、测试图形识别系统的说话人,学习本项目中的导航,本项目中的任务分解,任务1:根据逻辑覆盖法编写图形识别系统程序片段的测试用例,任务2:图形识别系统程序片段的测试路径,任务3:掌握白盒测试法的应用策略,本项目中每个任务的教学过程,任务4。不管里面是什么,拿水从入口倒下来洗。把面包机拆开一点,看看有没有锈迹,然后把白盒子一个一个地清理干净。测试人员对可见代码进行的一种测试,项目概述,6,常用白盒测试方法,逻辑覆盖是通过遍历程序逻辑结构来实现程序覆盖路径的测试方法。在程序控制流程图的基础上,通过分析控制流程图的循环复杂度,导出一组基本的可执行路径,然后根据这些路径设计测试用例。任务1:逻辑覆盖测试,7
2、,任务介绍,任务分析,相关知识点,任务实施,总结和扩展培训,项目概述,8,待测试的项目描述。图形识别系统根据输入信息确定最终图形的类型。主测试三角形问题的程序段接受三个整数a、b和输入。如果它能形成三角形,判断三角形的类型(等边三角形、等腰三角形、一般三角形)。要求输入三个整数a、b、c,必须满足以下条件:1a200;1b2001c200 .本项目主要针对该程序片段,根据白盒测试的各种需求编写测试用例。任务介绍,9,任务介绍,根据逻辑覆盖法为图形识别系统的程序段编写测试用例,void istri (int a,int b,int c)1 if(ab=c)|(a c=b)|(b c=a)2 pr
3、intf(不能形成三角形);3否则4 if(a=b)|(b=c)| |(a=c)5 if(a=b),任务分析,10,任务准备,首先,理解白盒测试和逻辑覆盖测试的特点。白盒测试:测试被测软件如何工作的测试逻辑覆盖:问题在于条件判断表达式本身的复杂性。第二,程序的逻辑结构流程图判断条件执行路径,任务分析,11,程序代码,void isri(int a,int b,int c)1 if(a b=c)|(a c)3 else 4 if(a=b)|(b=c)|(a=c)5 if(a=b),任务分析,12,流程图/判断条件/执行路径, t1:a b=c t23360a c=b路径1: p1p3路径2: p
4、1p4p5路径3:p1p 4路径4: p2,相关知识点,13,知识点列表,白盒测试逻辑覆盖语句覆盖判断覆盖条件覆盖条件/判断覆盖条件组合覆盖校正条件/判断覆盖,白盒测试,14,1,定义:白盒测试:白盒测试,(。 使用白盒测试方法进行动态测试时,需要测试软件产品的内部结构和处理过程,而不是软件产品的功能。白盒测试,15,2,特性:确保模块中的所有独立路径至少使用一次;检验真假;对于所有逻辑值;运行上下边界和运行范围内的所有循环;检查内部数据结构以确保其有效性。逻辑覆盖,16,1,表达式的复杂度由关注的条件决定,程序的覆盖是通过遍历程序的逻辑结构来实现的。根据基本测试原则,程序代码中的所有逻辑值都
5、需要测试真值和假值。,逻辑覆盖率,17,2,覆盖率指数1。声明覆盖范围,章节2。决策覆盖,dc) 3。条件覆盖范围(cc) 4。条件/决策覆盖范围,dc) 5。修改条件/决策覆盖范围(md/cc) 6。条件组合覆盖(ccc),语句覆盖,18,定义,语句覆盖(sc),也就是说,设计几个测试用例并在测试下运行程序,这样程序中的每个可执行语句至少可以被执行。这里的“几”意味着使用的测试用例越少越好。语句包含主要在测试中发现的有缺陷或错误的语句。语句覆盖率公式:语句覆盖率=被评估的语句数/可执行语句总数100%语句覆盖率的缺点:程序执行逻辑的覆盖率很低。语句覆盖,19、测试用例设计之一,决策覆盖,20
6、、定义,决策覆盖dc(decision coverage),有时称为分支覆盖,意味着设计几个测试用例并运行测试程序,这样每个决策的真分支和假分支至少可以被评估一次。决策路径覆盖率(ddp)=评估的决策路径数/决策路径总数x100%。决策覆盖的缺点:虽然它覆盖了程序的所有分支,但它主要测量整个表达式的最终值,而忽略了表达式的内部值。至少需要两个例子:p1p3 p2p4,测试用例设计之一,条件覆盖,22,定义,条件覆盖(cc),设计测试用例并运行测试程序,这样每个判断语句中每个逻辑条件的可能值至少可以满足一次。条件覆盖公式:条件覆盖=评估的条件值数/条件值总数x100%。条件覆盖的缺点:只考虑每个
7、判断语句中的每个表达式,而不是所有的条件分支(或者不是所有涉及的分支),也就是说,它不能满足判断覆盖,条件覆盖,23,例如,测试用例设计之一。你对声明覆盖面和判断覆盖面满意吗?判断条件覆盖率,24,定义,判断条件覆盖率cdc(条件/决策覆盖率),设计测试用例,使每个判断条件的所有可能性(真/假)至少出现一次,每个判断本身的判断结果也至少出现一次。判断条件覆盖的公式:条件覆盖=评估的条件值和判断分支的数量/(条件值和判断分支的总数)判断条件覆盖的缺点:没有考虑个体判断对整体结果的影响,不能发现逻辑错误。例如,测试用例设计之一,它是否满足语句覆盖、判断覆盖和条件覆盖?条件组合覆盖,26、定义、条件
8、组合覆盖,也称为mcc(多条件覆盖),设计测试用例,使所有可能的条件组合在每个判断中至少出现一次,满足条件组合覆盖必须满足判断覆盖、条件覆盖和条件判断覆盖。条件组合覆盖率公式:条件组合覆盖率=评估的条件值组合数/条件值组合总数。条件组合覆盖率,27,例,写出每个条件组合,写出条件组合的真值表,根据它写出测试用例,修改条件判断覆盖率,28,定义,修改判断条件覆盖率单元的入口和出口必须至少调用一次,并且程序中判断的每个分支必须至少执行一次。对于由逻辑运算(与、或等)判断的基本布尔条件。)在程序中,每个条件必须取所有可能的值,并且每个条件对判断结果都有独立的影响。修改后的条件/判断覆盖,29,描述,
9、一般来说,mc/dc首先要求实现条件覆盖和判断覆盖,在此基础上,对于每个条件c,需要满足以下条件的两个用例:1)条件c判断中的所有条件除条件c外都有相同的值;2)条件c的值是相反的;3)计算结果相反。,修订条件判断覆盖,30,示例,任务实现,31,步骤,语句覆盖测试用例编写,实现案例判断覆盖测试用例编写,实现案例条件覆盖测试用例编写,实现案例条件/判断覆盖测试用例编写,实现案例条件组合覆盖测试用例编写,实现案例修订条件/判断覆盖测试用例编写,语句覆盖实现,32,描述,语句覆盖:确保程序的每个可执行语句至少执行一次。案例流程图应该满足语句覆盖,并且每个路径都应该被执行。任务分析,33,流程图/判
10、断条件/执行路径,t1: a b=c t 23360 a c=b t3 3360 b c=a t4 3360 a=b t53360路径1: p1p3路径2: p1p4p5路径3:p1p 4路径4: p2,语句覆盖实现,34,测试用例,语句覆盖实现,35,测试分析,优点:测试用例可以从源代码中直观地获得,无需仔细分析每个决策节点的缺点:关注语句而不是决策节点的逻辑案例流程图从这个例子中,由于判断真假的每个分支都有独立的语句,对于这个例子,判断覆盖率和语句覆盖率的要求是一致的。任务分析,37,流程图/判断条件/执行路径,t 13336 a b=c t 23360 a c=b t : b c=a t
11、 43360 a=b t 53360 b=c t 63360 a=c,路径1: p1p3路径2: p1p4p5路径3:p1p 4路径4: p2,并确定实现了覆盖。双分支或多分支条:决策覆盖和语句覆盖的测试路径相似或相同。决策覆盖不需要仔细分析每个决策节点。没有深入符合判断表达式的测试细节,也没有测试每个简单逻辑判断条件的正确性。实施有条件覆盖,40。描述、条件覆盖:确保程序中每个复合判断表达式的每个简单判断条件的真假至少执行一次。案例流程图和条件表达式从这个例子中,为了满足条件覆盖,有必要使基本逻辑判断条件t1t6的真、假分支至少执行一次。任务分析,41,流程图/判断条件/执行路径,t 133
12、60 a b=c t 23360 a c=b t : b c=a t 43360 a=b t 53360 b=c t 63360 a=c,路径1: p1p3路径2: p1p4p5路径3:p1p 4路径4: p2,实现条件覆盖。实施条件覆盖,44、测试分析,条件覆盖通过仔细分析每个决策节点,增加了测试路径,在一定程度上解决了语句覆盖和决策覆盖的第一个缺点,但仍然不能解决第二个缺点(逻辑条件组合)。一般来说,条件覆盖使用的测试用例不仅仅是语句覆盖和决策覆盖,但是如果条件覆盖被满足,它可能不满足决策覆盖甚至语句覆盖,如这个例子所示。条件/决策覆盖的实现,45,描述,条件/决策语句覆盖:确保程序的每个
13、决策节点至少执行一次,每个简单的决策条件至少执行一次。案例流程图和条件表达式从这个例子中,为了满足条件/判断覆盖,只需要将上述条件覆盖测试用例和判断覆盖测试用例结合起来。,任务分析,46,流程图/判断条件/执行路径,t 1: a b=c t 23360 a c=b t : b c=a t 43360 a=b t 53360 b=c t 63360 a=c,路径1: p1p3路径2:47、测试用例,条件/决策覆盖的实现,48、测试分析,理论上讲,决策/条件覆盖是一个比较完善的覆盖指标,它弥补了决策覆盖和条件覆盖的不足,但是这个指标包含了大量的设计工作,需要很好的设计技巧,条件组合覆盖是可以实现的
14、,49、描述,条件组合覆盖:程序的每个决策节点中所有简单的决策都有案例流程图和条件表达式保证。因此,我们只需要考虑前两个判断节点的简单判断条件的组合。任务分析,50,流程图/判断条件/执行路径,t 1: a b=c t 23360 a c=b t : b c=a t 43360 a=b t 53360 b=c t 63360 a=c,路径1: p1p3路径2:条件t1t3的组合,条件组合覆盖的实现,52,条件t4t6的组合,条件组合覆盖的实现,53,最终条件组合,条件组合覆盖的实现,54,测试用例,条件组合覆盖的实现,55,测试分析。理论上,条件组合覆盖是一个更好的覆盖指标,因为它必须满足决策
15、覆盖、条件覆盖和决策/。然而,当判断表达式复杂时,条件组合覆盖的测试用例规模相当大。修改的条件/决策覆盖,56,描述,修改的条件/决策覆盖(简称mc/dc),它要求每个简单的逻辑决策条件在满足决策/条件覆盖的基础上可以独立地影响整个决策表达式。案例流程图和条件表达式,修改条件/判断覆盖,57,描述,一般来说,mc/dc首先要求实现条件覆盖和判断覆盖。在此基础上,对于每个条件c,需要满足以下条件的两个用例:1)除条件c外,条件c判断中的所有条件都具有相同的值;2)条件c的值是相反的;3)计算结果相反。修改条件/判断范围,58,描述,通俗地说,mc/dc首先要求条件范围和判断范围。在此基础上,对于每个条件c,要求有两个用例满足以下条件:1)除条件c外,条件c判断中的所有条件都有相同的值;2)条件c的值是相反的;3)计算结
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CRIA 17003.2-2024功能鞋 第2部分:防寒评价技术规范
- T/TMAC 163-2025新能源汽车电子后视镜技术要求
- T/GDAF 005-2022广东公共安全技术防范标准化试点管理规范
- T/CI 344-2024低温冷风微量润滑平面磨削加工工艺规范
- T/CAAMTB 94-2022汽车车窗玻璃用加速固化聚氨酯胶粘剂
- T/CPMIA 0107-2026注射成型车间智能制造执行系统 (MES)
- AI在体育教育中的应用
- 2025~2026学年安徽宣城市郎溪县人教版六年级下册期末数学试卷【附答案】
- 2025-2026学年吉林省舒兰市初中数学九年级期末下册自测模拟重点试题(附答案)
- PHP微信开发面试题及详细答案(实战版)
- 村医院感知识培训
- 《陆用液体装卸臂检验规程》
- 售后服务组织架构及人员岗位职责
- 食品加工厂安全生产手册
- 吉林大学《微积分AⅠ》2021-2022学年第一学期期末试卷
- 有限空间管理规章制度
- (高清版)AQ 1028-2006 煤矿井工开采通风技术条件
- DLT 572-2021 电力变压器运行规程
- 宅基地转让协议书
- DL-T1098-2016间隔棒技术条件和试验方法
- 慢性乙型肝炎防治指南(2019年版)
评论
0/150
提交评论