[发明专利]一种测试用例集自动生成方法在审
申请号: | 201711204079.X | 申请日: | 2017-11-27 |
公开(公告)号: | CN107748721A | 公开(公告)日: | 2018-03-02 |
发明(设计)人: | 谢祥南;魏延栋;徐志鑫;曹明华 | 申请(专利权)人: | 中国航空无线电电子研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 中国航空专利中心11008 | 代理人: | 王迪 |
地址: | 200233 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 测试 用例集 自动 生成 方法 | ||
技术领域
本发明专利涉及软件测试技术领域,涉及一种测试用例集自动生成方法,具体涉及一套基于MC/DC要求的测试用例集自动生成算法。
背景技术
DO-178B根据系统安全性评估过程中予以确定的软件对潜在失效状态的影响程度将航空电子软件划分为A-E五个等级。不同等级软件对应不同的测试覆盖性要求,其中,A级软件测试应满足MC/DC(Modified Condition/Decision Coverage)覆盖。
MC/DC,即修订的条件/判定覆盖,是由Chilenski和Miller提出的一套利用足够少的测试用例完成软件可信度测试的准则。
MC/DC要求:程序中,每一个入口点和退出点至少被引用一次;每一个判定的所有可能输出结果至少产生一次;判定中,每一个条件的所有可能输出结果至少产生一次,且能独立影响该判定的输出。
尽管该方法可以有效提高软件测试效率,但如何快速获取满足MC/DC要求的测试用例集却是一个难题,为此,国内外众多学者都作了相关研究。
专利200910242657.8(一种计算机软件白盒测试的实现方法及系统)提出的方法,首先需要对所有可能情况(2n,n为条件数)进行遍历,然后获取每个条件的测试独立对,再经过一番叠加筛简得到最终的最小测试用例集。当条件数较少时,该方法很有效,当条件数量很大时,该方法则要占用较多资源及存储空间,运算速度也会降低。
专利201110265194.4(一种基于遗传算法的MC/DC测试数据自动生成方法)提出的算法则应用了遗传算法理论,同样,该方法也要首先获得所有测试用例,然后利用遗传算法理论再作进一步处理。相对上条专利,该方法理论性太强,使用难度更高。
专利US2014/0068364A1(MODIFIED CONDITION/DECISION COVERAGE TEST CASE AUTOMATION)提出了一套自动化解决方案,可以有效解决测试用例自动生成问题,遗憾的是,对如何解析逻辑式这一核心问题却没有作详细介绍。
此外,在若干学者的论文中,亦提出了一些解决方法,但是均存在不足,主要表现在,一些算法功能强大但太过复杂,而另一些算法则简单易用却缺少对耦合条件逻辑的分析。
发明内容
基于上述背景,本发明公开一套算法,共包含两种解析算法和两种检查算法,可以根据逻辑表达式特点(条件耦合状态)选择相应算法以解决其测试用例集生成问题。该套算法既能保证零耦合条件逻辑表达式和弱耦合条件逻辑表达式的测试用例集满足最小测试用例集(N+1)要求,又能保证强耦合条件逻辑式的测试用例集生成快速有效,且测试用例数远小于全遍历数(2n,n为条件数)。发明的算法扩展性高、移植性强且容易掌握,可以有效解决各种实际软件的测试覆盖率问题。
所述的逻辑表达式是指,用逻辑运算符将关系表达式(本专利主要讨论“==”和“!=”关系表达式,其它不等逻辑的解析方法可以对本算法功能进一步扩展获得)和逻辑量连接起来的有意义的式子。
所述的条件是指,逻辑表达式中的关系表达式或逻辑量,即不包含与、或等运算符的部分。在本专利中,A与!A视为两个互斥条件。
所述的关系表达式是指,含逻辑量和关系运算符的表达式。
所述的判定是指,逻辑表达式中由两个及以上条件和逻辑运算符组成的关系式。
所述的耦合条件是指,逻辑表达式中,同一条件重复出现,或某条件的取值制约其它条件的取值。
所述的零耦合条件逻辑表达式是指,逻辑表达式中不存在耦合条件。
所述的弱耦合条件逻辑表达式是指,逻辑表达式中存在部分耦合条件,但任一判定的所有条件不能均在之前的判定中作为决定条件出现过。
所述的决定条件是指,取值决定当前判定输出结果的条件,通常为该判定的首个条件。
所述的强耦合条件逻辑表达式是指,逻辑表达式中存在耦合条件,且存在某一判定的所有条件均在之前的判定中作为决定条件出现过。
一种测试用例集自动生成方法,其特征在于,包括以下具体步骤:
步骤1:获取逻辑表达式的条件集及条件前置逻辑符集、条件/判定集及条件/判定前置逻辑符集信息;
所述的条件集是指逻辑表达式的所有条件的集合,所有条件包括耦合条件,每一个条件表示为C1~Cn,设总条件数为N,相异条件数为M,且按照表达式中出现顺序排列;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国航空无线电电子研究所,未经中国航空无线电电子研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711204079.X/2.html,转载请声明来源钻瓜专利网。