《软件工程概述软件测试技术.ppt》由会员分享,可在线阅读,更多相关《软件工程概述软件测试技术.ppt(20页珍藏版)》请在优知文库上搜索。
1、软件测试技术软件测试技术软件测试技术软件测试技术1常用的黑盒测试用例的设计方法有11种:p 等价类划分法p 边界值划分法p 判定表法p 因果图法p 状态迁移法p 流程划分法p 正交实验法p 输入域测试法p 输出域测试法p 异常分析法p 错误猜测法 软件测试技术软件测试技术软件测试技术软件测试技术2因果图因果图是从用自然语言书写的程序规格说明的描述中找到因(输入条件)和果(输出或程序状态的改变),通过因果图转化为判别表。软件测试技术软件测试技术软件测试技术软件测试技术3因果图的基本逻辑符号软件测试技术软件测试技术软件测试技术软件测试技术4因果图的约束符号 E约束(异):a和b中至多有一个可能为1
2、,即a和b不能同时为1。 I约束(或):a、b和c中至少有一个必须是1,即 a、b 和c不能同时为0。 O约束(唯一);a和b必须有一个,且仅有1个为1。R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。这四个是输入条件的约束,还有一个是输出条件约束。M约束(强制):若结果a是1,则结果b强制为0。 软件测试技术软件测试技术软件测试技术软件测试技术5因果图产生测试用例的步骤p把程序的规格划分解成可以工作的片断;p确定规格中的原因和结果;p分析规格以确定原因和结果之间的逻辑关系,并且使用因果图表示出来;p确定句法或环境的约束,这些约束使得某些组合不能产生;p把因果图转化成有限入口决策
3、表;p从决策表的每一列选取一个测试用例。软件测试技术软件测试技术软件测试技术软件测试技术6因果图案例第一列字符必须或,第二列字符必须是数字,在此情况下文件被更新。但如果第一个字符不正确,那么信息被产生;如果第二个字符不是数字,则信息产生。软件测试技术软件测试技术软件测试技术软件测试技术7案例分析原因:第一个字符是“”第一个字符是“”第二个字符是一个数字结果:进行更新产生信息产生信息软件测试技术软件测试技术软件测试技术软件测试技术8简单的因果图软件测试技术软件测试技术软件测试技术软件测试技术9带有约束的因果图软件测试技术软件测试技术软件测试技术软件测试技术10决策表软件测试技术软件测试技术软件测
4、试技术软件测试技术11练习 有一个处理单价为1 1元5 5角钱的盒装饮料的自动售货机软件。若投入1 1元5 5角硬币,按下“可乐”、“雪碧”和 “红茶”按钮,相应的饮料就送出来。若投入的是两元硬币,在送出饮料的同时退还角硬币。练习:做出因果图,编制出决策表软件测试技术软件测试技术软件测试技术软件测试技术12软件测试技术软件测试技术软件测试技术软件测试技术13软件测试技术软件测试技术软件测试技术软件测试技术14练习p分析中国象棋中走马的实际情况(下面未注明的均指的是对马的说明)1、如果落点在棋盘外,则不移动棋子;2、如果落点与起点不构成日字型,则不移动棋子;3、如果落点处有自己方棋子,则不移动棋
5、子;4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;5、如果不属于1-4条,且落点处无棋子,则移动棋子;6、如果不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子;7如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。 软件测试技术软件测试技术软件测试技术软件测试技术15根据分析明确原因和结果p 原因:1、 落点在棋盘上;2、 落点与起点构成日字;3、 落点处为自己方棋子;4、 落点方向的邻近交叉点无棋子;5、 落点处无棋子;6、 落点处为对方棋子(非老将);7、 落点处为对方老将。p 结果:21、不移动棋子;22、移动棋子;23、移
6、动棋子,并除去对方棋子;24、移动棋子,并提示战胜对方,结束游戏。软件测试技术软件测试技术软件测试技术软件测试技术16p 添加中间节点11,目的是作为导出结果的进一步原因,简化因果图 软件测试技术软件测试技术软件测试技术软件测试技术17软件测试技术软件测试技术软件测试技术软件测试技术18p注:1、以上判定表中由于表格大小限制没有列出最后所选的测试用例;2、第2表中部分列被合并表示不可能发生的现象;3、通过中间节点将用例的判定表简化为两个小表。减少工作量 软件测试技术软件测试技术软件测试技术软件测试技术19因果图小结p根据需求规格说明书,分析因果关系;p有助于用一个系统的方法选择出高效的测试用例集;p额外的好处,就是可以指出规格说明的不完整性和不明确之处。p因果图是一种形式语言,实际上是一种数字逻辑电路,但没有使用标准的电子学符号,而是使用了稍微简单点的符号。Thank you!