买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:兰州交通大学
摘要:本发明公开了一种基于禁忌搜索的列车运行控制系统测试用例生成方法,该方法包括以下步骤:S1、提取临时限速场景的设备故障特征作为故障注入输入参数,分析设备间的约束关系,建立约束满足模型;S2、依据信号设备的特点,改进禁忌搜索算法的初始解生成方式和邻域搜索过程,生成满足约束关系的测试用例。本发明改进了禁忌搜索算法,将其成功应用在组合测试中,解决了初始解质量低、约束致使产生无效测试用例等问题,能够高效减少测试用例生成个数与覆盖组合,可有效缩短测试时间;本发明所提算法在覆盖维度较大、参数较多时,测试用例约简能力和故障检测能力更高,更节约测试成本,测试效率更高。
主权项:1.一种基于禁忌搜索的列车运行控制系统测试用例生成方法,其特征在于,该方法包括以下步骤:S1、提取临时限速场景的设备故障特征作为故障注入输入参数,分析设备间的约束关系,建立约束满足模型;S2、依据信号设备的特点,改进禁忌搜索算法的初始解生成方式和邻域搜索过程,生成满足约束关系的测试用例;在步骤S1中,依据CTCS结构特点总结临时限速场景下故障注入测试时存在的约束;所述约束包括:禁止元组,用于表示在测试用例中不能同时出现的故障类型;必须元组,用于表示测试用例中必须同时出现故障类型;屏蔽元组,用于表示某些故障类型会屏蔽另一些故障类型;在步骤S1中,所述约束满足模型为:fia∈Fj,a∈v1 式中,v为参数取值,fia表示第i个设备按顺序排列的第a个故障,Fj表示第j种设备类型;约束1和约束2表示在一条测试用例里每个设备的故障类型只能选择一个,约束3表示设备故障fia的逻辑约束必须满足才能够执行,约束4表示fja只能在fia后执行;在步骤S2中,所述满足约束关系的测试用例的生成过程包括以下步骤:初始化,用于分析临时限速场景设备的故障特征,设置故障注入参数并提取参数间的约束关系;CTCS约束满足数组生成,用于通过构建输入参数约束模型,生成约束满足数组,以降低后续算法的搜索空间;测试用例约简,用于约简测试用例的数量,利用改进的禁忌算法,得到满足约束关系下约简后的测试用例;在生成约束满足数组的覆盖表的约束处理中,使用避免约束的方法对选择排除法进行改进,每次生成一条测试用例,添加到测试用例集中,直到所有组合被全部覆盖为止;在生成约束满足数组的测试过程中,按照优先考虑必需元组,其次考虑禁止元组,最后考虑屏蔽元组的原则,移除不满足需求的测试用例;所述改进的禁忌算法具体为:通过贪心策略构造初始解,在保证覆盖强度的情况下,使其通过约束满足数组得到满足约束的邻域解,并在迭代过程中检验数组替换的可行性;算法伪代码包括以下步骤:初始化数组,生成初始解;选择邻域A1中移动代价最小的数组;判断禁忌表中的数组是否满足特赦准则,若满足则解禁,通过修改参数改变原始数组,如果最终解A中包含的未被覆盖数组的数量小于中间解A2,则更新测试用例集和禁忌表,直到生成最终测试用例;该改进的禁忌算法包含初始解、禁忌表、邻域解、特赦准则和终止条件5部分:1初始解矩阵的第一行即CTCS故障注入测试的第一条测试用例随机生成,然后基于贪心策略生成初始解;2禁忌表采用动态禁忌长度,设置初始禁忌长度Li=9000,若测试用例中某一元素的修改使其回到最近9000步搜索过的任一测试用例,则禁止该修改;若修改后的解优于当前解,则增加禁忌长度;3邻域解使用约束满足算法生成满足约束的邻域解,选择参数新值,并将其未被覆盖组合的数量降序排列,其中,计算覆盖新的t元组的所有移动,选择最小移动代价修改;4特赦准则在算法搜索过程中,若当前邻域中的被禁移动将产生历史最好解,即数组覆盖的t-way组合比未被禁忌移动的覆盖数组多时破禁;5终止条件使用最大迭代步数作为停止准则。
全文数据:
权利要求:
百度查询: 兰州交通大学 一种基于禁忌搜索的列车运行控制系统测试用例生成方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。