首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

基于符号化有限状态机的完备性测试用例生成方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:华侨大学;同济大学

摘要:本发明公开了一种基于符号化有限状态机的完备性测试用例生成方法,涉及软件测试领域,包括:采用STPA技术对安全攸关系统进行分析,得到精炼的软件安全要求并转换为线性时态逻辑属性、原子命题;采用符号化有限状态机对安全攸关系统进行建模和估值函数计算,得到测试用例生成模型,并对其进行基于一阶表达式的精化、可观察性转换,得到可观察的测试用例生成模型,并得到相应的输入等价类,基于可观察的测试用例生成模型的输入等价类集合和命题抽象生成测试用例,在故障域中的测试用例生成模型及其突变体执行测试用例,直至测试用例满足精炼的软件安全要求,解决测试用例数量庞大、完备性差的问题,以满足对安全攸关系统进行全面有效的测试要求。

主权项:1.一种基于符号化有限状态机的完备性测试用例生成方法,其特征在于,包括以下步骤:采用STPA技术对安全攸关系统进行分析,得到精炼的不安全控制动作以及精炼的软件安全要求,将所述精炼的软件安全要求转换为线性时态逻辑属性,并进一步转换为原子命题,以构成原子命题集;采用符号化有限状态机对所述安全攸关系统进行建模,得到测试用例生成模型,基于所述测试用例生成模型构建若干个突变体,并得到故障域,并计算所述安全攸关系统的所有估值函数,根据所述估值函数生成得到所述测试用例生成模型中的符号迹及其对应的具体迹,将所述估值函数映射到其满足的原子命题集中,得到命题抽象,通过递归定义将所述命题抽象扩展到赋值序列和具体迹上,其中,所述采用符号化有限状态机对所述安全攸关系统进行建模,得到测试用例生成模型,基于所述测试用例生成模型构建若干个突变体,并得到故障域,并计算所述安全攸关系统的所有估值函数,具体包括:采用符号化有限状态机对所述安全攸关系统进行建模,得到测试用例生成模型,所述测试用例生成模型表示为八元组,其中,有限集S表示状态空间,表示初始状态,R表示转换关系,,有限集I包含输入变量符号,有限集O包含输出变量符号,集合Var表示,D表示所有变量在类型域上的并集,表示输入字母表,为有限多个输入事件的集合,输入事件用表示,每个输入事件是输入变量上的无量词的一阶表达式,表示输出字母表,为输出表达式的集合,输出表达式用表示;基于所述测试用例生成模型引入错误行为构建若干个突变体,所述错误行为包括:错误或交换的输入事件、错误或交换的输出表达式、传输故障、添加或丢失的状态,所述传输故障包括额外的、丢失的或误导的转换,并将错误的输入事件加入到输入字母表中、将错误的输出表达式加入到输出字母表中,所述错误的输入事件和错误的输出表达式不在测试用例生成模型的任何地方出现,根据所有所述突变体构建得到故障域,所述故障域表示为,其中,n表示测试用例生成模型M具有n个可区分的状态,m表示测试用例生成模型M的突变体至多具有m个可区分的状态;估值函数:表示将每个变量符号与D中一个对应的类型的值关联起来,表示估值函数是输入事件的模型,即将输入事件中的每个变量符号v替换为D中对应的类型的值后,得到的布尔表达式为true,表示估值函数是输入事件和其相应的输出表达式的合取的模型,计算所述安全攸关系统的所有估值函数,所有从Var映射到D的估值函数集合表示为;对所述测试用例生成模型进行基于一阶表达式的精化,得到精化后的测试用例生成模型,基于所述精化后的测试用例生成模型对所有所述估值函数进行等价类划分,得到输入等价类,根据所述输入等价类对所述精化后的测试用例生成模型的转换进行标记,得到标记后的测试用例生成模型,基于所述标记后的测试用例生成模型构建可观察的测试用例生成模型,并生成所述可观察的测试用例生成模型的输入等价类集合,所述可观察的测试用例生成模型和所述测试用例生成模型在同一故障域中,具体包括:提供一个有限集合Q,其包含来自的自由变量的无量词自由的一阶表达式,有限集合Q的一个子集中的一阶表达式仅具有来自I的自由变量,基于所述测试用例生成模型M构建精化后的测试用例生成模型,表示为,所述精化的测试用例生成模型QM与所述测试用例生成模型在同一故障域中,对于任意的一阶表达式的子集,定义布尔表达式: ;其中,表示且;定义QM的输入字母表,如下式所示: ;其中,表示从I映射到D的所有估值函数的集合;定义QM的转移关系,如下式所示: ;根据以下规则对所有所述估值函数进行等价类划分:定义一阶公式为来自Y和补集的否定公式的合取,如下式所示: ;其中,故障域的字母表是所有输入事件、输出表达式和要验证的线性时态逻辑属性公式的原子命题集的并集,表示为,集合Y表示根据上式构造的、具有至少一个估值函数作为模型的所有输入事件的集合,集合Y如下式所示: ;对于每个,定义一个输入等价类,表示为: ;所有输入等价类的集合A表示为: ;根据所述输入等价类对所述精化后的测试用例生成模型QM的转换进行标记,得到标记后的测试用例生成模型,若所述标记后的测试用例生成模型存在从相同起始状态s发出但结束于不同的目标状态则对所述标记后的测试用例生成模型应用幂集构造法可观察的测试用例生成模型,具体包括:确定初始状态:将标记后的测试用例生成模型的初始状态作为可观察的测试用例生成模型的初始状态;确定状态集合:对于每个状态集合,在每个输入事件上推导其可能转换到的状态,构成新的状态集合,成为可观察的测试用例生成模型中的状态;确定转移函数:根据标记后的测试用例生成模型的转移函数,以及每个状态集合在每个输入事件上的迹,确定可观察的测试用例生成模型的转移函数;确定接受状态:确定可观察的测试用例生成模型中的接受状态,这些状态是包含标记后的测试用例生成模型中的接受状态的状态集合;基于所述可观察的测试用例生成模型中的接受状态对输入等价类进行细化,生成所述可观察的测试用例生成模型的输入等价类;否则,将所述标记后的测试用例生成模型作为可观察的测试用例生成模型;基于所述可观察的测试用例生成模型的输入等价类集合和命题抽象生成测试用例,在所述故障域中的测试用例生成模型及其突变体执行所述测试用例,检测所述测试用例是否满足所述精炼的软件安全要求,若不满足,则重新构建故障域并重复以上两个步骤,直至所述测试用例满足所述精炼的软件安全要求。

全文数据:

权利要求:

百度查询: 华侨大学 同济大学 基于符号化有限状态机的完备性测试用例生成方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。