【技术实现步骤摘要】
本专利技术涉及一种嵌入式软件黑盒测试用例生成方法,特别涉及,属于软件工程中的基于模型的测试自动化
。
技术介绍
当前,嵌入式软件的复杂度越来越高,可靠性和实时性要求也越来越严格,但嵌入式产品上市的时间要求却越来越短。为满足这些严苛的要求,高效的软件测试是必要的,包括测试用例的自动规划、生成、优化、执行与评估等。高效的软件测试需要解决如何在尽量弱的测试假设下,尽量快地生成尽量小但查错能力尽量强的测试用例集。 基于模型的测试(Model-Based Testing, MBT)是一种根据被测系统(SystemUnder Test,SUT)需求和功能说明的模型及其派生的模型(一般称为测试模型)产生测试用例和评估测试结果的产品质量保证技术。基于模型的测试是一种高效的软件测试。 一般认为,MBT起始于1956年,最初主要用于电路、通信协议等与硬件设备相关的测试,到70年代末才开始用于与软件相关的测试。经过多年的研究,MBT已经形成了比较经典的三种理论一自动机理论、UML统一建模理论和概率统计与自动机相结合的理论。这三种理论又分别对应三类模型——FSM/EFSM/LTS/ASM模型、UML模型和Markov模型。近年来,关于MBT的研究热点主要包括将模型融入到软件生产线中、用例优化、用例评估、将MBT用于不同领域(如嵌入式系统、大规模分布式系统和数据采集系统等)、根据UML模型及其他模型(如Uppaal模型、Simulink/Stateflow模型等)生成测试用例等。 在传统的软件测试中,经典的黑盒测试用例设计方法有等价类划分、 ...
【技术保护点】
一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于所述方法包括以下步骤:步骤一、采用数据流图、故障树、因果图、判定表、图形间的嵌套机制和图形的扩充语义构建嵌入式软件的静态模型;步骤二、对步骤一构建的嵌入式软件的静态模型进行校验,并根据测试目的人工规划测试项,然后自动对测试项进行补全和合法性判定,最后填写测试项的名称;所述的测试项的补全采用图的经典遍历算法实现;所述的测试项的合法性判定为:数据流图的无意义图元包括“与关系节点”、“或关系节点”和“异或关系节点”,故障树的无意义图元包括“连线”、“与门”和“或门”,因果图的无意义图元包括“连线”,若测试项全由上述无意义的图元组成,则将被判定为非法;步骤三、根据测试覆盖准则和测试用例生成算法自动生成测试项对应的黑盒测试用例集合,并将测试项和测试用例集合入库保存,其中每种测试项都有相应的测试用例生成算法;所述的测试项分为数据流图测试项、故障树测试项、因果图测试项、判定表测试项、时间域测试项和接口测试项;所述的测试覆盖准则包括数据流图的测试路径覆盖准则、故障树的最小割集覆盖准则、判定表的条件元动作元组合覆盖准则、时间域覆盖准则、时间耦合 ...
【技术特征摘要】
1.一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于所述方法包括以下步骤: 步骤一、采用数据流图、故障树、因果图、判定表、图形间的嵌套机制和图形的扩充语义构建嵌入式软件的静态模型; 步骤二、对步骤一构建的嵌入式软件的静态模型进行校验,并根据测试目的人工规划测试项,然后自动对测试项进行补全和合法性判定,最后填写测试项的名称; 所述的测试项的补全采用图的经典遍历算法实现; 所述的测试项的合法性判定为:数据流图的无意义图元包括“与关系节点”、“或关系节点”和“异或关系节点”,故障树的无意义图元包括“连线”、“与门”和“或门”,因果图的无意义图元包括“连线”,若测试项全由上述无意义的图元组成,则将被判定为非法; 步骤三、根据测试覆盖准则和测试用例生成算法自动生成测试项对应的黑盒测试用例集合,并将测试项和测试用例集合入库保存,其中每种测试项都有相应的测试用例生成算法; 所述的测试项分为数据流图测试项、故障树测试项、因果图测试项、判定表测试项、时间域测试项和接口测试项; 所述的测试覆盖准则包括数据流图的测试路径覆盖准则、故障树的最小割集覆盖准贝U、判定表的条件元动作元组合覆盖准则、时间域覆盖准则、时间耦合区间覆盖准则、接口的属性覆盖准则; 步骤四、对测试项和测试用例集合进行管理,包括添加、删除、修改和查看操作,以完善测试用例集合的生成。2.根据权利要求1所述的一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于步骤一所述的图形间的嵌套机制包括: (1)数据流图分层构建,具体为数据流图的数据加工嵌套子数据流图; (2)数据流图的数据加工嵌套故障树、因果图和判定表; (3)故障树的底事件嵌套子故障树。3.根据权利要求2所述的一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于步骤一所述的图形的扩充语义包括: (1)为数据流图的图元添加了测试语义,包括数据加工添加了反算程序、时间域、硬件和中断属性; (2)为故障树的图元添加了测试语义,包括底事件添加了CMP属性; (3)为判定表添加了测试语义,包括根据逻辑表达式自动生成判定表、添加判定表的前置条件。4.根据权利要求3所述的一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于步骤二所述的校验需要满足的条件如下: (1)针对数据加工,数据流图要求数据守恒; (2)针对数据流图的分层机制,数据流图要求父子图平衡; (3)故障树的事件约束,包括一棵故障树只有一个顶事件,底事件必须使用CMP属性量化描述; (4)因果图的要因约束,包括一个因果图只有一个主要因; (5)判定表的条件元动作元组合约束,包括一个规则项的条件元和动作元均非空。5.根据权利要求4所述的一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于所述步骤三中根据测试覆盖准则和测试用例生成算法自动生成数据流图测试项对应的黑盒测试用例集合具体为: 算法过程: 1)在合法完整的测试项Ii中基于测试路径覆盖准则遍历求出所有测试路径集合Wi; 2)令简单测试路径集合Ul为空集,数据流图测试项的测试用例集合Tl为空集; 3)逐个遍历所有测试路径集合W1,设当前的测试路径集合为Wl[i]; 4)按测试路径集合化简规则对当前的测试路径集合Wl[i]进行化简,得到该测试路径集合中的所有简单测试路径SI ; 5)将SI加入简单测试路径集合Ul中,回到步骤3)继续遍历直到所有测试路径集合Wl都已经被化简过为止; 6)逐个遍历简单测试路径集合Ul,设当前的简单测试路径为Ul[j]; 7)根据当前的简单测试路径Ul[j]的考核点生成Ul [j]的测试用例集合Ml ; 8)将Ml加入测试用例集合Tl中,回到步骤6)继续遍历直到简单测试路径集合Ul中的简单测试路径都生成过测试用例集合为止; 9)返回数据流图测试项的测试用例集合Tl。6.根据权利要求5所述的一种基于静态模型的嵌入式软件黑盒测试用例生成方法,其特征在于所述步骤三中根据测试覆盖准则和测试用例生成算法自动生成故障树测试项对应的黑盒测试用例集合具体为: 算法过程: 1)在合法完整的测试项12中,采用最小割集算法求出故障树的所有最小割集W2,以便基于最小割集覆盖准则生成测试用例集合; 2)令故障树测试项的测试用例集合T2为空集; 3)逐个遍历所有最小割集W2,设当前的最小割集为W2[i]; 4)根据当前的最小割集W2[i]的考核点生成W2[i]的测试用例集合M2; 5)将M2加入故障树测试项的测试用例集合T2中,回到步骤3)直到所有最小割集W2都生成过测试用例集合为止; 6)逐个遍历合...
【专利技术属性】
技术研发人员:吴翔虎,曲明成,邹炳松,张森,
申请(专利权)人:吴翔虎,曲明成,邹炳松,张森,
类型:发明
国别省市:黑龙江;23
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。