思步网

查看: 12014|回复: 10
打印 上一主题 下一主题

[测试认证] 软件评测师学习笔记--黑盒测试

[复制链接]
黑盒测试
一. 黑盒测试概述(2.10 黑盒测试)
1.定义
l 也称功能测试,它是通过测试来检测每个功能是否都能正常使用
l 把程序看成一个黑盒子,完全不考虑程序内部结构和内部特性,着眼于程序外部结构,不考虑内部逻辑结构
l 在程序接口进行测试,只检查程序功能是否按照需求说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息
l 主要针对软件界面和软件功能进行测试
2.试图发现的错误类型
l 功能不正确或遗漏
l 界面错误(输入能否正确的接受?能否输出正确的结果)
l 数据库访问错误(如数据结构定义错误或外部信息(如数据文件)访问错误)
l 性能错误
l 初始化和终止错误
3.黑盒测试用例设计方法
(1) 等价类划分法:把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。每一类的代表性数据在测试中的作用等价于这一类的其他值
(2) 边界值分析法:通过选择等价类边界的测试用例。不仅重视输入条件边界,而且也必须考虑输出域边界
(3) 错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例的方法
(4) 因果图法:从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输入或程序状态的改变),可以通过因果图转换成判定表
(5) 判定表驱动法:利用判定表进行测试用例的设计
(6) 正交试验设计法:使用已设计好的正交表格来安排试验,并进行数据分析的一种方法,目的是用最少的测试用例达到最高的测试覆盖率
(7) 功能图法:用功能图形象地表示程序的功能说明,并机械地生成功能图的测试用例。功能图模型由状态迁移图和逻辑功能模型构成
二. 黑盒测试用例设计方法
1.等价类划分法
(1)划分基础:需求规格说明书中输入、输出要求
(2)等价类:某个输入域的子集合;分为有效等价类和无效等价类
l 有效等价类:指对于程序规格说明书来说是合理的、有意义的输入数据构成的集合。利用有效等价类可以检验程序是否实现了规格说明书中的功能和性能
l 无效等价类:与有效等价的定义恰巧相反
(3)划分等价类原则(6条)
序号 输入条件(数据) 划分等价类
1 规定了取值范围值的个数 一个有效等价类两个无效等价类
2 规定了输入值的集合规定了“必须如何”的条件 一个有效等价类一个无效等价类
3 是一个布尔量 一个有效等价类一个无效等价类
4 输入数据的一组值(n个),并且程序对每一个输入值分别进行处理 n个有效等价类一个无效等价类
5 规定必须遵守的规则 一个有效等价类(符合规则)若干个无效等价类
6 在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类
     
(4) 列出等价类表
在确定了等价类之后,建立等价类表,列出所有划分出的等价类
输入条件 有效等价类 无效等类
…… …… ……
(5) 确定测试用例步骤
l 第一步:为每个等价类规定一个惟一的编号
l 第二步:设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。重复这一步骤,最后使得所有有效等价类均被测试用例所覆盖
l 第三步:设计一个新的测试用例,使其只覆盖一个无效等价类。重复这一步骤,最后使得所有有效等价类均被测试用例所覆盖
小结:采用等价类划分方法设计测试用例,按照划分等价类、列出等价列表、确定测试用例三个步骤完成,目标是把可能的测试用例组合缩减到仍然足以满足软件测试需求为止。
2.边界值分析法
(1) 边界类型
l 边界条件:可以在产品说明书中有定义或者在使用软件过程中确定
l 次边界条件:在软件内部,也称为内部边界条件
l 其他边界条件:如输入信息为空(对于此类问题应建立单独的等价类空间)、非法、错误、不正确和垃圾数据
(2)边界值的选择方法(遵循原则)
序号 输入条件(数据) 输入边界值数据
1 规定了取值范围 刚刚达到这个范围刚刚超越这个范围
2 规定值的个数 最大个数、比最大个数大1最小个数、比最小个数少1
3 根据规格说明书的每个输出条件,使用 原则1、2
4 输入或输出是个有序集合 集合的第一个、最后一个元素
5 程序中使用一个内部数据结构 内部数据结构边界上的值
6 分析规格说明,找出其他可能的边界
(3)例子:
l 允许文本输入1~255个字符:测试用例-1、255、254、0、256
l 程序读写软盘:测试用例-文件很小、等于软盘容量限制之内、空、超过
l 程序允许在一张纸上打印多个页面:测试用例-只打印一页,规定最大页,0页,大于允许最大页数
3.错误推测法
基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它们选择测试用例
4.因果图法
   侧重于输入条件的各种组合,各个输入情况之间的相互制约关系
(1) 因果图设计方法
从用自然语言书写的程序规格说明的描述中找出因果,通过因果图转换成判定表
(2) 因果图导出测试用例步骤
l 第一步:分析程序规格说明的描述中,哪些是原因,哪些是结果。原在因常常是输入条件或是输入条件的等价类,结果是输出条件
l 第二步:分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的‘因果图’
l 第三步:标明约束条件
l 第四步:把因果图转换成判定表
l 第五步:为判定表中每一列表示的情况设计测试用例
(3) 因果图基本图形符号
通常在因果图中,用Ci 表示原因,Ei表示结果,各结点表示状态,可取值0(状态不出现) 或1(某状态出现)
l 恒等:若原因出现,则结果出现;若原因不出现,则结果不出现
l 非(~):若原因出现,则结果不出现;若原因不出现,则结果出现
l 或(V):若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现;
l 与(∧):若几个原因都出现,结果才出现;若其中有一个原因不出现,则结果不出现
(4) 因果图的约束符号
从输入(原因)考虑四种约束
l E(互斥):表示两个原因不会同时成立,两个中最多有一个可能成立
l I(包含):表示三个原因中至少有一个必须成立
l O(惟一):表示两个原因中必须有一个,且仅有一个成立
l R(要求):表示两个原因,a出现时,b也必须出现,a出现时,b不可能不出现
从输出(结果)考虑一种约束
l M(屏蔽):两个结果,a为1时,b必须是0,当a为0时,b值不定

2005-4-19
5.判定表驱动法
(1) 判定表:是分析和表达多逻辑条件下执行不同操作的情况的工具
(2) 判定表组成
l 条件桩:列出了问题的所有条件
l 动作桩:列出了问题规定可能采取的操作
l 条件项:列出针对它所列条件的取值,在所有可能情况下的真假值
l 动作项:列出在条件项的各种取值情况下应该采取的动作
l 规则:任何一个条件组合的特定取值及其相应要执行的操作
注:判定表中贯穿条件项和动作项的一列就是一条规则;
(3) 判定表的建立(步骤)
l 第一步:确定规则的个数。假如有n个条件,每个条件有两个取值(0,1),故有2n种规则
l 第二步:列出所有的条件桩和动作桩
l 第三步:填入条件项
l 第四步:填入动作项。制定初始判定表
l 第五步:简化。合并相似规则或者相同动作
(4) 适合使用判定表设计测试用例的条件
l 规格说明以判定表的形式给出,或很容易转换成判定表
l 条件的排列顺序不影响执行哪些操作


上一篇:2008软件评测师考试试题
下一篇:软件评测师考试复习之软件工程
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 支持支持 反对反对
回复 论坛版权

使用道具 举报

我也是坐沙发的
很有借鉴意义,先收藏了,谢谢楼主。
看了LZ的帖子,我只想说一句很好很强大!
很有见地的探讨,先收藏着~
学习下我只是路过,不发表意见……
打酱油的人拉,顺便赚点金币
不错 支持一个了
众里寻他千百度,蓦然回首在这里!
其实,很多情况下都是这样的,习惯就好。
路过 帮顶 嘿嘿
您需要登录后才可以回帖 登录 | 注册

本版积分规则



思步组织思步科技|思步网|火花学堂|思步文库|思步问答|思步英才|天下心
© 2007 思步网 浙ICP备10212573号-4(首次备案号:浙ICP备07035264号)|邮箱:service#step365.com(将#换成@)|服务热线:0571-28827450
在线培训课程|求职招聘|思步文库|官方微信|手机APP|思步问答|微博平台|官方QQ群|交流论坛|软件工程透析|关于我们|申请友链|
点击这里给我发消息     点击这里给我发消息
思步 step365 过程改进 CMMI中文 质量保证 质量管理 流程体系 需求跟踪矩阵 敏捷开发 Scrum 软件度量 项目评审 全员改进 流程管理 人力资源 6sigma 信息安全 ISO27001认证 IT服务管理 ISO20000认证 ISO9000认证 软件测试 SQA 配置管理 IPD 软件工程 PMP认证 PMP试题 PMBOK中文 精益研发 agile 顾问式管理培训
返回顶部