[发明专利]单元测试方法及装置、电子设备和存储介质在审
申请号: | 202211200156.5 | 申请日: | 2022-09-29 |
公开(公告)号: | CN115587030A | 公开(公告)日: | 2023-01-10 |
发明(设计)人: | 张成志;魏莉力;朱恒成;盛勤;张兵;宋丽红 | 申请(专利权)人: | 深圳前海微众银行股份有限公司;香港科技大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 刘晖铭;蒋雅洁 |
地址: | 518052 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 单元测试 方法 装置 电子设备 存储 介质 | ||
1.一种单元测试方法,其特征在于,所述方法包括:
确定当前语句群体,所述当前语句群体中包括至少两个语句集合,每一所述语句集合中包括至少一个语句子集,每一所述语句子集包括用于定义模拟对象的行为语句和所述行为语句的至少一条依赖语句;
对所述当前语句群体进行迭代处理,得到下一语句群体;其中,所述迭代处理包括对从第一语句集合中的至少一个语句子集中确定的第一语句子集和从第二语句集合中的至少一个语句子集中确定的第二语句子集进行交叉互换处理,所述第一语句集合和所述第二语句集合分别是从所述至少两个语句集合中确定的,所述下一语句群体中语句集合的数量与所述当前语句群体中语句集合的数量相同;
基于第一测试用例的断言部分和所述下一语句群体,确定目标语句集合,所述目标语句集合用于定义所述模拟对象;
基于所述模拟对象对所述第一测试用例进行所述单元测试。
2.根据权利要求1所述的方法,其特征在于,所述对所述当前语句群体进行迭代处理,得到下一语句群体,包括:
对所述当前语句群体中每一所述语句集合进行适应度评估处理,得到所述当前语句群体中每一所述语句集合的适应度;
基于所述当前语句群体中每一所述语句集合的所述适应度,对所述当前语句群体进行所述迭代处理,得到所述下一语句群体。
3.根据权利要求2所述的方法,其特征在于,所述下一语句群体中包括M个第三语句集合和N个第四语句集合,M和N为正整数;
所述基于所述当前语句群体中每一所述语句集合的所述适应度,对所述当前语句群体进行所述迭代处理,得到所述下一语句群体,包括:
将所述当前语句群体中每一所述语句集合的适应度满足预设条件的M个语句集合,分别作为所述下一语句群体中的一个所述第三语句集合;
对所述当前语句群体进行N/2次的迭代处理,在每一次所述迭代处理的过程中,基于所述当前语句群体,得到所述下一语句群体中的两个所述第四语句集合。
4.根据权利要求3所述的方法,其特征在于,所述基于所述当前语句群体,得到所述下一语句群体中的两个所述第四语句集合,包括:
利用预设的选择算法,从所述当前语句群体中的至少一个语句集合中确定所述第一语句集合和所述第二语句集合;
将所述第一语句集合中的第一语句子集与所述第二语句集合中的第二语句子集进行所述交叉互换处理,得到第五语句集合和第六语句集合;
对所述第五语句集合进行变异处理,得到变异后的第五语句集合,并将所述变异后的第五语句集合作为一个所述第四语句集合;
对所述第六语句集合进行变异处理,得到变异后的第六语句集合,并将所述变异后的第六语句集合作为另一个所述第四语句集合。
5.根据权利要求4所述的方法,其特征在于,所述对所述第五语句集合进行变异处理,得到变异后的第五语句集合,包括:
从所述第五语句集合中的至少一条语句中确定目标语句;
基于所述目标语句的类型,从至少一种变异方式中确定目标变异方式;
利用所述目标变异方式对所述目标语句进行变异处理,得到变异后的目标语句;
将所述第五语句集合中的目标语句替换为变异后的目标语句,以得到所述变异后的第五语句集合。
6.根据权利要求5所述的方法,其特征在于,所述基于所述目标语句的类型,从至少一种变异方式中确定目标变异方式,包括以下至少之一:
在所述目标语句的类型为包含变量的情况下,所述目标变异方式包括以下至少之一:从预设的符号库中随机选择一个值作为新的变量的值、从所述符号库中随机选择一个值替换所述变量的值、删除所述变量;其中,所述符号库中的每一个值是基于所述第一测试用例和被测对象生成的;
在所述目标语句的类型为包含参数的情况下,所述目标变异方式包括:从所述第五语句集合中随机选择一个参数替换所述目标语句中的参数;
在所述目标语句的类型为包含行为语句的情况下,所述目标变异方式包括以下至少之一:增加新的行为语句、删除所述行为语句、调换所述行为语句与所述第五语句集合中的另一行为语句的执行顺序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司;香港科技大学,未经深圳前海微众银行股份有限公司;香港科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211200156.5/1.html,转载请声明来源钻瓜专利网。