[发明专利]一种代码的用例获取方法、装置、电子设备及介质在审
申请号: | 202010785347.7 | 申请日: | 2020-08-06 |
公开(公告)号: | CN112052160A | 公开(公告)日: | 2020-12-08 |
发明(设计)人: | 许维 | 申请(专利权)人: | 中信银行股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F40/194;G06K9/62 |
代理公司: | 北京市兰台律师事务所 11354 | 代理人: | 张峰 |
地址: | 100020 北京市朝*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 获取 方法 装置 电子设备 介质 | ||
本申请提供了一种代码的用例获取方法、装置、电子设备及介质,其中,代码的用例获取方法步骤:建立样本用例与样本代码之间的匹配关系;将样本用例与样本代码之间的匹配关系进行无监督学习训练,以构建用例与代码的聚类模型;获取代码变更差异化文件;根据代码变更差异化文件筛选出测试用例;将测试用例作为用例与代码的聚类模型的输入,以使得用例与代码的聚类模型对测试用例进行分类并输出覆盖率最高的用例集合。本申请能够把用例与代码关系作为特征向量,使用聚类算法将用例分配到不同的用例集里,在推荐测试用例时,只推荐部分用例,无需所有用例都执行,这样一来,即保证了差异化代码覆盖率80%以上,也降低了用例密度,从而提高测试效率。
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种代码的用例获取方法、装置、电子设备及介质。
背景技术
传统的功能测试只是注重于需求层面的黑盒测试,在进行测试范围回归时,也只是在开发人员的指引下评估回归范围。评估太过于主观性,难免评估不到位,出现了大量漏测问题。并且很多时候因为代码合并错误,或者开发夹带上线等现象出现,仅仅通过需求去完成测试,很容易出现测试不全。
为解决黑盒测试上存在的问题,基于代码的白盒测试引起了大家关注,白盒测试与黑盒测试的区别在于,白盒测试执行用例的时候会关注用例所覆盖的代码,并且建立代码和用例之间的关系,每一轮测试时,根据变更代码的情况,推荐出对应的用例。
然而,在代码中,有很多基础方法会被很多用例调用,一旦这种基础方法有变更,将推荐大量的用例去执行,导致需要执行的用例数大幅度提升,测试人员效率受到严重的影响。
发明内容
本申请提供了一种代码的用例获取方法、装置、电子设备及介质,旨在至少能解决上述的技术缺陷之一。本申请所采用的技术方案如下:
本申请第一方面提供一种代码的用例获取方法,所述方法包括:
建立样本用例与样本代码之间的匹配关系;
将所述样本用例与所述样本代码之间的匹配关系进行无监督学习训练,以构建用例与代码的聚类模型;
获取代码变更差异化文件;
根据所述代码变更差异化文件筛选出测试用例;
将所述测试用例作为所述用例与代码的聚类模型的输入,以使得所述用例与代码的聚类模型对所述测试用例进行分类并输出覆盖率最高的用例集合。
本申请第一方面的方法能够把用例与代码关系作为特征向量,使用聚类算法将用例分配到不同的用例集里,在推荐测试用例时,只推荐部分用例,无需所有用例都执行,这样一来,即保证了差异化代码覆盖率80%以上,也降低了用例密度,从而提高测试效率。
在本申请第一方面中,作为一种可选的实施方式,所述建立样本用例与样本代码之间的匹配关系,包括:
在工程插入监听包,以在所述样本用例被目标用户触发执行时,根据所述监听包监听所述工程中的代码变更,并确定所述样本代码;
获取所述样本用例的执行状态;
当根据所述样本用例的执行状态判断出所述样本用例执行完成时,建立所述样本用例的ID与所述工程的ID、所述样本代码的行数、所述样本代码所属类的ID之间的关系,并将所述样本用例ID与所述工程的ID、所述样本代码的行数、所述样本代码所属类的ID之间的关系作为所述样本用例与样本代码之间的匹配关系。
在本可选的实施方式中,通过样本用例的ID与所述工程的ID、所述样本代码的行数、所述样本代码所属类的ID可建立所述样本用例与样本代码之间的匹配关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中信银行股份有限公司,未经中信银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010785347.7/2.html,转载请声明来源钻瓜专利网。