[发明专利]一种计算机软件白盒测试的实现方法及系统有效
申请号: | 200910242657.8 | 申请日: | 2009-12-14 |
公开(公告)号: | CN101710305A | 公开(公告)日: | 2010-05-19 |
发明(设计)人: | 陈聪明;李丰;冯晓兵;霍玮 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京律诚同业知识产权代理有限公司 11006 | 代理人: | 祁建国;梁挥 |
地址: | 100080 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算机软件 测试 实现 方法 系统 | ||
技术领域
本发明涉及计算机软件领域,尤其涉及一种计算机软件白盒测试的实现 方法及系统。
背景技术
软件测试是软件工程中的重要环节,由于测试目标的不同,存在不同的 测试标准。修正条件/判定覆盖(Modified Condition/Decision Coverage,简称 MC/DC),是软件白盒测试领域逻辑覆盖测试技术中的一种测试标准。该标 准最早是在1994年由John Joseph Chilenski和Steven P.Miller两位工程师在 DO-178B标准中首次提出。DO-178B标准由航空无线电技术协会制定,美国 联邦航空局将其用于测试所有新开发的航空软件,时至今日已经成为航空软 件以及关键安全领域软件测试中一个广泛应用的测试标准。在DO-178B中阐 明了MC/DC的意义:对于关键性的实时程序而言,超过半数的可执行代码可 能都与布尔运算表达式有关,表达式的复杂性应得到关注。MC/DC测试标准 主要是为了检测程序中布尔表达式当中可能存在的错误。
修正条件/判定覆盖中的条件(condition)表示不含有逻辑操作符的布尔表 达式,例如(x>20)、(x>y>10);如果同一个布尔表达式在一个判定中出现了 多次,那么该表达式应算作多个条件。判定(decision)表示由条件和零个或 者多个逻辑操作符所组成的一个布尔表达式,例如Z=((x>20)or(y>20))and ((x>20)or(z<20))代表了一个判定,这个判定可以简写为:(A or B)and(A or D)。该判定中有四个条件:A、B、A、D。MC/DC测试标准有四条准则:
a)程序的入口点和出口点都要被执行到;
b)程序中每一个判定的所有可能结果都要被执行到;
c)程序中每一个判定中的每一个条件的所有可能结果都要被执行到;
d)判定中的每一个条件都能独立影响判定的结果。
MC/DC标准中最重要的一条准则就是:判定中的每一个条件都能独立影 响判定的结果。若一组两个测试用例中对于某个条件的取值相反,而保持其 他条件取值不变,如果判定的结果也相反,则表明此条件能够独立的影响判 定的结果,说明该条件在逻辑上是有效的,同时这样的一对测试用例可以构 成该条件在MC/DC测试标准中的独立影响对(简称为独立对)。例如布尔取值 组合(true,true)(false,true)可以作为判定(A and B)中条件A的独立对,为简 单起见,下文中都将以大写字母T表示true,大写字母F表示false。输入上 述的取值组合,判定的结果由T变为F,条件A改变的同时,保持了条件B 的取值。应用MC/DC测试标准,关键就是计算判定中每个条件的独立对。
在MC/DC独立对的实际求解过程中,还需要考虑两个问题,一个是布 尔运算中的短路计算;另外一个是判定表达式中条件之间的耦合关系。
所谓布尔表达式的短路计算是指无需对表达式中全部的操作数和操作符 进行计算就可得到表达式的布尔值。例如对于布尔表达式:Z=(A and B),若 A为false,则无需计算B的值就能确定Z必为false。此判定中在A的值为 false的时候,可以进行短路计算;反之,若A的值为true,则还需计算B的 值。
此外,在实际测试过程中,由于判定中条件之间可能存在耦合关系,改 变一个条件的取值而保持其他条件取值不变这个原则有时并不能保证。条件 之间的耦合关系可以分为以下两类:
a)强耦合:指改变一个条件的取值,必然会改变其他某些条件的取值, 例如判定:(x>0)and(y>10)or(x<=0)中的条件(x>0)和(x<=0);两个条件的取 值必然相反。
b)弱耦合:指改变一个条件的取值,可能改变其他一些条件的取值,例 如判定:(x>0)and(x>20)中的两个条件。弱耦合也能导致某些取值组合无法 得到,若(x>20)为true,则(x>0)必然为true,因此(x>0)为false,而(x>20)为 true的取值组合无法获得。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910242657.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电力导线联接装置
- 下一篇:一种用于矩阵式SPD的接线端口