




已阅读5页,还剩113页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件白盒测试,概览,在本章中,我们将学习:结构性白盒测试概述程序结构分析逻辑覆盖结构性测试案例,课程目录,结构测试概述程序结构分析逻辑覆盖结构测试案例分析结构测试工具,结构性测试(1),程序实现是已知的,是测试人员能够根据功能实际实现的方式来标识测试用例,又称“白盒测试”、“透明盒测试”。,结构性测试(2),规格说明,规格说明,程序,程序,测试用例(方法A),测试用例(方法B),方法A覆盖的区域比方法B覆盖的区域大,但两种方法的覆盖区域只能在程序实现部分,有两种维恩图来表示功能性测试:,功能性测试与结构性测试比较,单独使用都有其局限性;最好的方法:结合两种方法。,结构测试定义,把测试对象看做一个透明的盒子白盒测试是根据被测程序的内部结构设计测试用例并完成测试的一种测试方法白盒测试或逻辑驱动测试基于一个应用代码的内部逻辑知识,测试覆盖全部代码、分支、路径和条件,结构测试特点,可以构成测试数据使特定程序部分得到测试有一定的充分性度量手段可获得较多工具支持通常只用于单元测试,结构测试的方法,静态测试方法:程序结构分析代码走查代码审查控制流分析数据流分析信息流分析,动态测试方法:逻辑覆盖语句覆盖分支覆盖条件覆盖分支-条件覆盖路径覆盖,代码覆盖率,采用白盒法进行测试时,考虑的是测试用例对程序内部逻辑的覆盖程度最彻底的白盒法是覆盖程序中的每一条路径,但这往往无法实现采用其它一些标准来量度覆盖的程度,并希望覆盖程度尽可能高些,课程目录,结构测试概述程序结构分析逻辑覆盖结构测试案例分析结构测试工具使用,静态测试,静态测试包括代码审查和代码走查,此方法是软件测试的有效手段,静态测试技术特点,是指无须执行被测代码,而是借助专用的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率。静态测试在主机上完成,不需目标系统支持,测试的主要内容有编程标准验证、数据流分析技术、质量度量信息、代码结构可视化显示、测试外壳的创建。由此看出,静态测试只是对代码进行扫描分析,检测它的语法规则复杂度等是否符合要求,主要是为软件的质量保证提供依据,以提高软件的可靠性和易维护性静态测试可以手工、自动;,静态测试技术特点,静态测试不必动态地执行程序,也就不必要进行测试用例设计和结果判读等工作;静态测试可以由人工进行,充分发挥人的逻辑思维优势。静态测试试是不需要特别条件,容易开展。,桌面检查,桌面检查由程序员阅读自己所编的程序。存在一下问题:心理上的原因,没有发现错误的欲望;人存在思维定势;如果对功能理解错误,不容易纠正;相当于调试程序。,代码走查与代码审查,CodeInspection-X被定义,Y和Z被引用ifYZthenreturn;-Y和Z被引用,控制流图与数据流表,1,2,3,4,10,6,7,5,8,9,11,Z的值被送给外部环境,例如:假定某个变量的值在使用以前被错误的改写了(对输出没有任何作用),这个语句就会被发现,信息流分析,通过对输入数据、输出数据、语句之间的关系的分析来检查程序错误信息流分析用来分析,是否存在无用的语句。整除算法例子输入:in_m是被除数,in_n是除数输出:out_q是商,out_r是余数,整除算法例子,out_q=0;out_r=in_m;While(out_r=in_n)out_q+;out_r=out_rin_n;,信息流关系图,in_m,in_n,1,2,3,4,5,out_q,out_r,1,2,3,4,5,out_q,out_r,in_m,In_n,(1)输入变量影响语句,(2)语句影响到输出变量,(3),输入影响到输出,信息流分析,能够列出对输入变量的所有可能的引用在程序的任何指定点检查其执行可能影响某一输出变量值的语句输入输出关系提供一种检查,看每个输出值是否由相关的输入值,而不是其他值导出,课程目录,白盒测试概述程序结构分析逻辑覆盖结构测试案例分析结构测试工具使用,覆盖准则,测试到什么地步可以结束测试?覆盖准则,被测小程序,if(A1,被测程序段流程图,A18else9If(iType=1)10 x=y+10;11else12x=y+20;1314,基本路径测试方法(续),画出控制流图:如右图所示计算环形复杂度:10(条边)-8(个节点)+2=4导出独立路径(用语句编号表示)路径1:414路径2:46714路径3:4691013414路径4:4691213414,路径覆盖的利弊,实现了所有路径的测试,发现错误能力强某些条件错误可能无法发现路径数庞大,不可能覆盖所有路径用例数量的增加,循环测试路径覆盖,0次循环检查跳出循环1次循环检查循环初始值2次循环检查多次循环m次循环检查某次循环最大次数循环、比最大次数多一次、少一次循环检查循环次数边界,简化循环路径,循环使路径数量急剧增长简化无论循环的形式和实际执行循环体的次数多少,只考虑循环一次和0次两种情况进入循环体一次跳出循环体,循环程序流程图,C,B,C,B,(1),(2),简化循环路径图,(1)和(2)都可简化为(3),C,B,最少测试用例数计算,对于具体的程序,至少要设计多少测试用例?估算最少测试用例数帮助执行测试有助于估算测试的时间,结构化程序与N-S图,结构化程序是由3种基本控制结构组成顺序型选择型(条件分支)重复型(循环)测试时考虑的结构顺序型选择型(条件分支),程序结构与测试用例数,并行,串行,程序结构与测试用例数,当程序中判定多于一个时,形成的分支结构可以分为两类:嵌套型分支结构和连锁型分支结构对于嵌套型分支结构,若有n个判定语句,需要n+1个测试用例对于连锁型分支结构,若有n个判定语句,需要有2n个测试用例,覆盖它的2n条路径,最少测试用例数计算实例,计算最少测试用例数,最少测试用例数计算实例,最少测试用例数计算实例,测试覆盖准则,Foster的ESTCA覆盖准则错误敏感测试用例分析(ErrorSensitiveTestCasesAnalysis)问题,ESTCA覆盖准则,对于分支A(,=,=,B的情况分别测试一次对于分支A(,C时,选择A=C小正数当AC时,选择A=C小正数对于测试用例取值,在每个测试用例中尽量不同的值或符号,覆盖率要求,对单元测试来说,语句覆盖和分支覆盖是最基本的要求由于程序中错误(异常)处理工作的重要性以及其结构相对简单,要求错误处理要做到路径覆盖对质量要求高的软件单元,可根据情况提出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江西职业技术大学高层次人才招聘51人模拟试卷有完整答案详解
- 2025河南郑州航空港投资集团面向社会招聘25名考前自测高频考点模拟试题有答案详解
- 2025中心医院支持技术撤离指征考核
- 2025中心医院常规石蜡切片技术考核
- 2025江苏无锡市滨湖区卫生健康系统事业单位招聘高端、紧缺性人才14人(长期)考前自测高频考点模拟试题附答案详解(突破训练)
- 2025黑龙江伊春市铁力市招聘城市社区工作者笔试考前自测高频考点模拟试题及一套答案详解
- 2025广东深圳市特区建工招聘考前自测高频考点模拟试题及参考答案详解1套
- 2025人民医院内镜中心SOP文件编写与修订能力评估
- 2025江苏苏州市相城区教育系统招聘教师30人模拟试卷及答案详解(名师系列)
- 2025广东佛山市季华中学招聘编制教师2人考前自测高频考点模拟试题及答案详解(典优)
- 五粮液笔试考试题及答案
- 2025年河北省公需课《双碳目标下绿色能源转型趋势》答案
- 《针刺伤预防与处理》团体标准解读与实践
- 8.1 走进人工智能 课件 2024-2025学年浙教版(2023)初中信息技术八年级下册
- 销售合同法律风险分析-全面剖析
- 鄂尔多斯盆地地质特征与沉积模式分析
- 2025中美关税战时政述评-初中《道法》25年时政述评课件
- 鼻部解剖结构及其临床表现
- 2025年股东退股权益申请协议书范例
- 小学生乘坐飞机安全
- 机耕路施工方案与技术措施
评论
0/150
提交评论