软件工程黑盒测试课件

PPT
  • 阅读 63 次
  • 下载 0 次
  • 页数 60 页
  • 大小 478.047 KB
  • 2022-11-24 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
软件工程黑盒测试课件
可在后台配置第一页与第二页中间广告代码
软件工程黑盒测试课件
可在后台配置第二页与第三页中间广告代码
软件工程黑盒测试课件
可在后台配置第三页与第四页中间广告代码
软件工程黑盒测试课件
软件工程黑盒测试课件
还剩10页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 60
  • 收藏
  • 违规举报
  • © 版权认领
下载文档30.00 元 加入VIP免费下载
文本内容

【文档说明】软件工程黑盒测试课件.ppt,共(60)页,478.047 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-45017.html

以下为本文档部分文字说明:

§5.4黑盒测试的测试用例设计5.4.1等价类划分法(等价分配)把所有可能的输入数据(有效的和无效的)划分成若干个等价的子集(称为等价类别或等价区间),使得每个子集中的一个典型值在测试中的作用与这一子集中所有其它

值的作用相同.可从每个子集中选取一组数据来测试程序例:某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位

数字字符组成,前四位代表年,后两位代表月。如何用等价类划分法设计测试用例,来测试程序的日期检查功能?如何划分等价类?•有效等价类(合理等价类)•无效等价类(不合理等价类)划分等价类的标准:•覆盖•不相交•代表性

划分等价类的规则(1)如果输入条件规定了取值范围,可定义一个有效等价类和两个无效等价类。例输入值是学生成绩,范围是0~1000100有效等价类0≤成绩≤100无效等价类成绩>100无效等价类成绩<0(2)如果输入条件代表集合的某个元素,

则可定义一个有效等价类和一个无效等价类。划分等价类的规则:(3)如规定了输入数据的一组值,且程序对不同输入值做不同处理,则每个允许的输入值是一个有效等价类,并有一个无效等价类(所有不允许的输入值的集合)。例:输入条件说明学历可为:专科、本科、硕士、博士四种之一,则分别取这四个值作为

四个有效等价类,另外把四种学历之外的任何学历作为无效等价类(4)如果规定了输入数据必须遵循的规则,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。(5)如已划分的等价类各元素在程序中的处理方式不同,则应将此等价

类进一步划分成更小的等价类。用等价类划分法设计测试用例步骤:(1)形成等价类表,每一等价类规定一个唯一的编号;(2)设计一测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步骤,直到所有有效等价类均被测试用例所覆盖;(3)设计一新测试用例,使其只覆盖一个无效等

价类,重复这一步骤直到所有无效等价类均被覆盖;第一步:等价类划分输入条件有效等价类无效等价类报表日期的类型及长度6位数字字符(1)有非数字字符(4)少于6个数字字符(5)多于6个数字字符(6)年份范围在2003~2008之间(2)小于2003(7)大于2008(8)月份范围

在1~12之间(3)“报表日期”输入条件的等价类表小于1(9)大于12(10)第二步:为有效等价类设计测试用例测试数据期望结果覆盖范围200306等价类(1)(2)(3)输入有效对表中编号为1,2,3的3个有效等价类用一个测试用

例覆盖:(1)6位数字字符(2)年在2003~2008之间(3)月在1~12之间第三步:为每一个无效等价类设至少设计一个测试用例测试数据期望结果覆盖范围003MAY等价类(4)输入无效20035等价类(5)输入无效2003005等价类(

6)输入无效200105等价类(7)输入无效200905等价类(8)输入无效200300等价类(9)输入无效200313等价类(10)输入无效不能出现相同的测试用例本例的10个等价类至少需要8个测试用例例:对招干考试系统“输入学生成绩”子模块设计测

试录入准考证号的测试用例准考证号数据格式定义:共6为数字组成,其中第一位为专业代号:1-行政专业,2-法律专业,3-财经专业后5位为考生顺序号,编码范围为:行政专业准考证号码为:110001~111215法律专业准考证号码为:210001

~212006财经专业准考证号码为:310001~314015准考证号码的等价类划分有效等价类:(1)110001~111215(2)210001~212006(3)310001~314015无效等价类:(

4)-~110000(5)111216~210000(6)212007~31000(7)314016~+5.4.2边界值分析法边界值分析法与等价类划分法区别(1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的

每个边界都要作为测试条件。(2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况被测试子域测试内点测试外点如果在悬崖峭壁边可以自信地安全行走,平地就不在话下。如果软件在能力达到极限时能够运行,那么在正常情况下就不会出什么问题。软件边界与悬崖很类似输入

条件报表日期的类型及长度1个数字字符5个数字字符7个数字字符有1个非数字字符全部是非数字字符6个数字字符显示出错显示出错显示出错显示出错显示出错输入有效日期范围月份范围“报表日期”边界值分析法测试用例测试用例说明测试数据期望结果选取理由52003520030052003.5MAY---200305

月份为1月月份为12月月份<1月份>12200301200312200300200313200301200812200300200813输入有效输入有效显示出错显示出错输入有效输入有效显示出错显示出错在有效范围边界上选取数据仅有1个

合法字符比有效长度少1比有效长度多1只有1个非法字符6个非法字符类型及长度均有效最小日期最大日期刚好小于最小日期刚好大于最大日期最小月份最大月份刚好小于最小月份刚好大于最大月份有效等价类和用来测试getNumDaysI

nMonth()方法所选的有效输入有效等价类一个月有31天,非闰年19017(七月)一个月有31天,闰年19047(七月)一个月有30天,非闰年19016(六月)一个月有30天,闰年19046(六月)一个月为28或29天,非闰年19012(二月)月份输入值年份输入值一个月为28或29

天,闰年2(二月)1904用来测试getNumDaysInMonth()方法的附加边界值等价类可以被400整除的闰年20002(二月)可以被100整除的非闰年19002(二月)非正数无效月份12910正数无效月份131513月份输入

值年份输入值5.4.3错误推测法(errorguessing)根据经验、直觉和预感来进行测试例如:•一定要考虑建立处理下列等价类:•缺省值•空白•空值•零值•无输入条件•在已经找到软件缺陷的地方再找找5.4.4

因果图法因果图适合于描述对于多种输入条件的组合,相应产生多个动作的形式来设计测试用例。因果图方法最终生成的是判定表。因果图方法实例某电力公司有A、B、C、D四类收费标准,并规定:居民用电<100度/月按A类收费≥100度/月按B类收费动力用电<10000度/月

,非高峰,B类收费≥10000度/月,非高峰,C类收费<10000度/月,高峰,C类收费≥10000度/月,高峰,D类收费用因果图表明输入和输出间的逻辑关系1I12AB∨∧C435∧DI4I3I2∨∧∧∧∧

因果把因果图转换为判定表组合条件条件(原因)动作(结果)ABC123123456101100011000110000100001104101050011D000110010000测试用例为判定表每一列设计一个测试用例:1列居民电,90度/月A2列居民电,110度/月B3列动力电,非高峰,8000

度/月B4列动力电,非高峰,1.2万度/月C5列动力电,高峰,0.9万度/月C6列动力电,高峰,1.1万度/月D条件测试用例预期结果组合(输入数据)(输出动作)5.4.5状态测试软件必须测试程序的状态及其转换。•测试软件的逻辑流程•建立状态转换图•减少要测试的状态及转换的数量空闲等

待用户输入命令按下Esc键显示口令框口令错误消除口令正确初始状态消失空闲等待用户输入命令按下Esc键口令正确口令错误不同形式的状态转换图在黑盒测试中,不必了解代码中设置的地层变量,从软件用户的角度建立状态图即可减少要测试的状态及转换的数量•每种状态至少访问一次•测试最常见最普遍的状态

转换•测试状态之间最不常用的分支•测试所有错误状态及其返回值、•测试随即状态转换失败状态测试找到测试软件失败的案例。•竞争条件和时序错乱•重复•压迫•重负应联合使用,同时进行设置2Bwatch上的时间的顺序图:2Bwatch用户按下左和右按钮:

2Bwatch输入:2Bwatch显示:2Bwatch时间时间按下左按钮按下右按钮按下左和右按钮闪烁小时闪烁分钟增加分钟刷新提交更新时间停止闪烁2Bwatch设置时间功能的状态图和测试结果按左按钮按右按钮按左按钮按右按钮4.

2分钟以后测量时间设置时间电池没电3.按下左右按钮5.按下左右按钮/蜂鸣8.20年以后7.20年以后6.2.1.激励因素空集合测量时间1.初始变迁测试的变迁预期结果状态按下左边按钮测量时间2.同时按下两个按钮设置时间3.等2分钟测量时间4.超时………………§5.5

针对专门环境和应用的测试5.5.1GUI测试常见GUI测试指南:•对于窗口•对于菜单和鼠标操作•对于数据项5.5.2C/S体系结构的测试整体C/S测试策略(三个不同层次)•客户端应以“分离的”模式被测试(不考虑服务器

和底层网络的运行)•客户端软件和关联的服务器端应用被一起测试(网络运行不被明显考虑)•完整的C/S体系结构(包括网络运行和性能)被测试C/S常用测试方法•客户端应用功能测试•服务器测试(协调和数据管理功能、性能)•数据库测试•事务测试•网络通信测试5.5.3实时系统测试可采用以下四步

策略:(1)任务测试(2)行为测试(3)任务间测试(4)系统测试(1)任务测试(tasktesting)对每一个任务进行单独测试(白盒、黑盒测试),发现逻辑和功能上错误,不能发现定时上和行为上错误。(2)行为测试(behavioraltesting)用CASE

工具创建应用系统模型,模拟实时系统行为。按类测试各种事件(如中断、控制信号、数据)。测试过的事件以随机次序、随机频率送给系统,检查软件行为方面的错误.(3)任务间测试(intertasktesting)检查与时间

有关错误。如用不同数据速率、处理负载测试相互通信的异步任务。通过消息队列或数据存储测试任务间的通信来找出数据存储区错误的范围。(4)系统测试(systemtesting)软件、硬件组装后,找出软、硬件接口错误

。软件测试的过程单元测试被测模块集成测试设计信息单元测试被测模块单元测试被测模块测试过的模块确认测试系统测试软件需求其它系统元素装配好的软件确认的软件可运行的软件§5.6软件测试的步骤软件测试策略单元测试UCDRSIVST集成测试

确认测试系统测试系统工程软件需求分析软件设计代码编写5.6.1单元测试一.单元测试的内容主要对模块的五个基本特性进行评价模块错误处理模块接口局部数据结构重要的执行路径边界条件1.常见错误类型•接口错误•I/O错误•数据结构错误•算法错

误•比较及控制逻辑错误•错误处理错误2.模块测试基本原则•至少一次测试所有语句•测试所有可能的执行或逻辑路径的组合•测试每个模块的所有入口和出口3.确定单元测试数据集•值域•值类•离散值•值的次序集(测试顺序文件和表)二.单元测试的方法单元测试一般为编码步骤的附属部分

.模块不是独立的程序,自己不能运行,要靠其它部分来调用和驱动,要为每个单元测试开发两个软件:(1)驱动模块(驱动程序):相当于主模块(2)桩模块(测试存根、连接程序):代替所测模块调用的子模块单元测试的测试环境举例:BACDE待测试模块单元测试的测

试环境举例:被测模块B驱动模块(模拟模块A)桩模块(测试存根)(模拟模块E)测试用例测试结果许多模块不能用简单的软件进行充分的单元测试,此时,完全的测试可放到集成测试阶段再进行.单元测试的测试环境举例:实际软件华氏到慑氏转换模块温

度数据实际配置测试用例数据结果测试驱动软件华氏到慑氏转换模块结果测试驱动际配置单元测试的测试环境举例温度显示模块温度接口模块实际配置测试驱动际配置温度显示模块程序员编写的桩模块(测试存根)温度值的测试文件5.6.2集成测试(组装测试)集成测试需考虑的问题:•数据穿越接口可能

丢失.•一模块可能破坏另一模块功能.•子功能组装可能未产生所要求的•主功能.•全程数据结构可能出问题.•误差累积问题.集成测试方法通常采用黑盒测试技术实施策略:•非渐增式测试•渐增式测试深度优先广度优先自顶向下结合自底向上结合一.非渐增式

集成方式一次就把所有通过了单元测试的模块组合在一起进行全程序的测试.缺点:发现错误难以诊断定位.又称“莽撞测试”.二.渐增式集成方式从一个模块开始,测一次添加一个模块,边组装边测试,以发现与接口相联系的问题。自顶向下结合方式举例:ADBE模块测试结合顺序CF深度优先:A、B、E

、C、D、F广度优先:A、B、C、D、E、F自顶向下结合方式举例:(深度优先)A测试AS2S1S3A加入BS2BS3S4A加入ES2BS3EA加入CCBS3E加入DCBDE加入FCBDEAAFS5自底向上结合方式举例:

ACBDFEEd1Cd3Fd4Bd2EDd5F自底向上结合方式举例:McD1MaMbD2D3簇1簇2簇33.混合集成测试方法•一般对软件结构的上层使用自顶向下结合的方法;•对下层使用自底向上结合的方法;自顶向下自

底向上优点可在测试早期实现并验证系统主要功能设计测试用例容易缺点不需驱动模块需桩模块不需桩模块只有到最后程序才能作为一个整体五.α测试和β测试α测试(Alpha)在开发者的场所由用户进行,在开发着关注和控制的环境下进行.β测试(Beta)最终用户在自己的场所进行.5.6.

4系统测试软件只是计算机系统的一个元素,软件最终要与其他系统元素(如新硬件、信息等)相结合,进行各种集成测试和确认测试.用于系统测试的测试类型:(1)恢复测试(2)安全性测试(3)强度测试(4)性能测试(1)恢复测试以不同的方式强使软件出现故障,检测软件

能否恰当地完成恢复.自动恢复:检测重新初始化、检测点设置、数据恢复、重新启动等是否正确.人工干预恢复:检测平均恢复时间是否在允许范围内.(2)安全性测试设计测试用例,突破软件安全保护机构的安全保密措施,检验系统预防机

制的漏洞.(3)强度测试测试用例,检验系统能力最高能达到的实际限度,让系统处于资源的异常数量、异常频率、异常批量的条件下测试系统的承受能力.一般比平常限度高5-10倍的限度做测试用例.网站测试的实例黑盒测试•网页文字

测试•超级链接•图形•表单•对象及其他功能(点击计数器、滚动文字等)灰盒测试网页(检查脚本和HTML语句)适合灰盒测试白盒测试•流行的Web语言(Java,JavaScript,ActiveX,VBScript,Perl,XML)•

与网站系统结构和编程有关的测试•动态内容•数据库驱动的网站•用编程方法创建的网页•服务器性能和加载•安全性网站测试的实例配置和兼容性测试•硬件平台•浏览器软件和版本•浏览器插件•浏览器选项•视频分辨率和色深、文字大小•调制解调器速率易用性测试

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?