基于深度学习和蚁群算法的EFSM测试序列生成方法技术

技术编号:39241906 阅读:23 留言:0更新日期:2023-10-30 11:54
本发明专利技术公开了基于深度学习和蚁群算法的EFSM测试序列生成方法,将深度强化学习和蚁群算法首次应用在EFSM模型的测试序列自动生成中,基于深度强化学习的决策模型学习并推导出两两变迁节点之间的最短子路径,并结合蚁群算法来生成新的测试序列,能够更加准确地覆盖系统的不同状态和路径,提高了测试用例的覆盖率,并能够在进行回归测试和测试用例生成应用中有效地减少测试序列生成的时间开销。中有效地减少测试序列生成的时间开销。中有效地减少测试序列生成的时间开销。

【技术实现步骤摘要】
基于深度学习和蚁群算法的EFSM测试序列生成方法


[0001]本专利技术属于基于模型的测试序列生成领域,具体涉及一种基于深度强化学习和蚁群算法的EFSM测试序列生成方法。

技术介绍

[0002]在一些故障成本非常高的系统中,例如航空航天、医疗或金融系统,高频率地生成多个测试用例以降低故障风险并确保系统符合安全要求至关重要。测试用例的生成首先需要找到一条符合给定覆盖准则的测试序列,而可执行性是测试序列必须满足的必要条件。如果测试序列中的变迁之间因为数据依赖而发生冲突,将导致测试序列不可执行,这将浪费大量资源。因此,在这些高频率生成测试用例的测试场景中,解决测试序列不可执行的问题变得尤为重要。
[0003]许多技术已经被提出来解决EFSM测试中的序列不可执行问题。其中最为有效的方法之一是对EFSM模型进行扩展,通过对数据流进行重建,得到一个类似FSM的新结构,以消除数据依赖,从而搜索到的序列不会因为变迁之间的冲突而不可执行。例如,RTEA方法(Random TEA)通过随机搜索TEA来获取有效的测试序列,BTEA方法(BFS
...

【技术保护点】

【技术特征摘要】
1.基于深度学习和蚁群算法的EFSM测试序列生成方法,其特征在于:该方法具体步骤如下:(1)基于EFSM模型搭建深度强化学习所需的训练环境:从被测系统的规格说明中提取出EFSM抽象模型,将EFSM抽象模型转换成以变迁作为节点的模型TEFSM,以此来构建深度强化学习所需要的训练环境,并设计深度强化学习组成要素:奖励函数、状态空间和动作空间;(2)智能体训练:将模型TEFSM中的所有变迁提取出来,并对任意两个变迁之间的最短子路径寻找过程进行预训练,训练结束后,生成任意两个变迁之间的最短子路径,从而建立各个状态机的决策模型,其中包含用于指导深度强化学习环境任意两个变迁之间最短子路径的高级决策信息;(3)测试序列生成:基于蚁群算法,从变迁路径组合的可行解中找到长度最短的总路径作为最终的测试序列。2.根据权利要求1所述基于深度学习和蚁群算法的EFSM测试序列生成方法,其特征在于:所述步骤(1)中模型TEFSM的设计如下:在模型TEFSM中,节点node
ti
表示EFSM抽象模型中的变迁t
i
,节点node
ti
到node
tj
之间的边表示EFSM抽象模型中变迁t
j
的输入事件和谓词;当模型TEFSM处于节点nodr
ti
位置,表示EFSM抽象模型已经执行了变迁t
i
上的行为并处在t
i
所指向的状态;此时,变迁t
i
的下一个可到达变迁集合就是从node
ti
出发的所有边指向节点表示的变迁;只有系统接收到从node
ti
到node
tj
边上对应t
j
的输入事件并且满足谓词时,模型TEFSM才能从节点node
ti
转移到node
tj
。3.根据权利要求1所述基于深度学习和蚁群算法的EFSM测试序列生成方法,...

【专利技术属性】
技术研发人员:舒挺潘志杰吴崔屏
申请(专利权)人:浙江理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1