[发明专利]一种代码检测方法、装置、存储介质及测试终端有效
申请号: | 201810321498.X | 申请日: | 2018-04-11 |
公开(公告)号: | CN108549538B | 公开(公告)日: | 2021-03-02 |
发明(设计)人: | 邹越;袁明凯;黄斌;张蓓;严明;魏学峰 | 申请(专利权)人: | 深圳市腾讯网络信息技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F11/36 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 黄威 |
地址: | 518000 广东省深圳市宝安区新安街道新安六路御景*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 检测 方法 装置 存储 介质 测试 终端 | ||
本发明实施例公开了一种代码检测方法、装置、存储介质及测试终端,本发明实施例获取待检测的代码文件;构建所述待检测的代码文件对应的全局符号表;获取所述待检测的代码文件中每个子代码文件对应的词法单元序列表及局部符号表;根据所述局部符号表和所述全局符号表,对所述词法单元序列表进行更新,得到更新后的词法单元序列表;根据所述局部符号表、所述全局符号表及所述更新后的词法单元序列表,确定所述待检测的代码文件的检测结果。该方案实现了对待检测的代码文件的全局检测,而不仅仅局限于单独对子代码文件进行局部检测,提高了代码检测的准确性。
技术领域
本发明涉及计算机技术领域,具体涉及一种代码检测方法、装置、存储介质及测试终端。
背景技术
在软件项目开发中,为确保代码的可用性及准确性等,在代码开发出来后,通常需要对代码进行各种检测,得到代码检测结果,然后可以利用代码检测结果帮助开发人员定位代码中隐藏的问题,以便对代码进行相应的修复。
现有技术中,一个项目的代码文件中一般包括多个子代码文件,在对代码进行检测的过程中,需要单独对代码文件中的各个子代码文件进行检测,例如,先对一个子代码文件中的代码进行分析,获取该子代码文件的局部信息,根据该子代码文件的局部信息进行局部检测,得到该子代码文件的局部检测结果。然后,对另一个子代码文件中的代码按照该方法进行局部检测,得到另一个子代码文件的局部检测结果,依次类推,直至完成对代码文件中所有子代码文件的检测。
在对现有技术的研究和实践过程中,本发明的发明人发现,由于现有代码检测方案中对代码文件中的各个子代码文件的检测是独立,其检测的过程比较简单,得出的检测结果仅仅是代码文件中的各个子代码文件对应的局部检测结果,因此导致得到的局部检测结果准确性低。
发明内容
本发明实施例提供一种代码检测方法、装置、存储介质及测试终端,旨在提高代码检测的准确性。
为解决上述技术问题,本发明实施例提供以下技术方案:
一种代码检测方法,包括:
获取待检测的代码文件;
构建所述待检测的代码文件对应的全局符号表;
获取所述待检测的代码文件中每个子代码文件对应的词法单元序列表及局部符号表;
根据所述局部符号表和所述全局符号表,对所述词法单元序列表进行更新,得到更新后的词法单元序列表;
根据所述局部符号表、所述全局符号表及所述更新后的词法单元序列表,确定所述待检测的代码文件的检测结果。
一种代码检测装置,包括:
第一获取单元,用于获取待检测的代码文件;
构建单元,用于构建所述待检测的代码文件对应的全局符号表;
第二获取单元,用于获取所述待检测的代码文件中每个子代码文件对应的词法单元序列表及局部符号表;
更新单元,用于根据所述局部符号表和所述全局符号表,对所述词法单元序列表进行更新,得到更新后的词法单元序列表;
确定单元,用于根据所述局部符号表、所述全局符号表及所述更新后的词法单元序列表,确定所述待检测的代码文件的检测结果。
一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种代码检测方法中的步骤。
一种测试终端,所述测试终端包括:至少一个存储器和至少一个处理器;所述存储器存储有程序,所述处理器调用所述程序,以执行本发明实施例所提供的任一种代码检测方法中的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市腾讯网络信息技术有限公司,未经深圳市腾讯网络信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810321498.X/2.html,转载请声明来源钻瓜专利网。