买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:中国矿业大学
摘要:本发明公开了一种基于Actor‑Critic算法的类集成测试序列生成方法,属于软件测试技术领域。包括下列步骤:1)定义目标任务;2)程序静态分析;3)度量测试桩复杂度;4)设计奖励函数;5)Actor网络选择动作;6)Critic网络评价动作的优劣;7)更新网络参数;8)生成类集成测试序列。本发明解决了目前已有的类集成测试序列生成方法评估确定类集成测试序列花费的总体代价偏高的问题,为实际生产生活中测试人员开展测试工作提供了更为合理的测试序列生成方法,提升了集成测试的效率,可以更好地控制产品的质量。
主权项:1.一种基于Actor-Critic算法的类集成测试序列生成方法,其特征在于:步骤1、定义目标任务:本方法的任务是使Actor网络环境中不断地进行尝试,根据不同的状态选择不同的动作,同时,Critic根据当前所处的环境,对Actor所选动作做出价值评估;最终是两个网络不断优化,最终目标是为了训练出的Actor网络选择出总体测试桩复杂度最低的序列;具体步骤如下:1.1、将要分析的软件系统中的所有类视作一个类集合;1.2、Actor网络依次选择不重复的类作为动作,记录下动作顺序,最终所得动作顺序即为类集成测试序列候选方案;1.3、从候选解决方案中找到一条总体测试代价最低的动作顺序,即为本次学习过程所求的类集成测试序列;步骤2、程序静态分析:对源程序进行静态分析,将获取的信息用于计算类间的属性和方法复杂度,通过属性复杂度计算类间的属性耦合,通过方法复杂度计算类间的方法耦合;具体步骤如下:2.1、分析类间关系,通过属性复杂度计算类间的属性耦合,使用Ai,j代表,i和j分别表示程序中的类,属性复杂度数量上等于i调用j的成员变量数、方法参数类型与方法的返回值数目三者之和;2.2、通过方法复杂度计算类间的方法耦合,使用Mi,j代表,方法复杂度数目上等于i调用j中方法的数目;2.3、对属性和方法复杂度进行标准化;步骤3、度量测试桩复杂度:依据前面得到的属性和方法复杂度计算测试桩复杂度,为后面奖励函数的设计提供信息;具体步骤如下:3.1、设定测试桩复杂度计算中的属性和方法的权值;3.2、结合属性和方法复杂度计算得到测试桩复杂度;3.3、当得到类集成测试序列时,对过程中产生的测试桩复杂度进行累加,得到总体测试桩复杂度;步骤4、设计奖励函数:将测试桩复杂度的计算融入奖励函数的设计中,将动作收益与动作成本相减得出动作净收益,作为动作奖励值;步骤5、Actor网络选择动作:通过奖励函数反馈值函数,通过值函数的设定保证累计奖励最大化;步骤6、Critic网络评价动作的优劣:当Actor完成设定的训练次数,选出整体奖励值最大的动作路径,即为本次学习得到的类集成测试序列;具体步骤如下:6.1、在步骤五完成之后,由状态S变为状态S’;6.2、将当前状态S’转换为向量ΦS’作为Critic网络的输入向量;6.3、将输出ValueS’作为对S’的价值评估;步骤7、更新网络参数:当Actor网络与Critic网络完成一定次数的循环后,产生的经验值可以用于更新两个网络中的参数,使之更加准确;具体步骤如下:7.1、更新策略网络πA,S;θActor:7.2、更新价值网络VS;wCritic:步骤8、得出类集成测试序列:当Actor完成设定的训练次数,选出整体奖励值最大的动作路径,即为本次学习得到的类集成测试序列。
全文数据:
权利要求:
百度查询: 中国矿业大学 一种基于Actor-Critic算法的类集成测试序列生成方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。