[发明专利]代码评价方法、装置、设备及存储介质在审
申请号: | 202210660634.4 | 申请日: | 2022-06-13 |
公开(公告)号: | CN115080054A | 公开(公告)日: | 2022-09-20 |
发明(设计)人: | 刘彤 | 申请(专利权)人: | 北京聪明核桃教育科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 李彩玲 |
地址: | 100081 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 评价 方法 装置 设备 存储 介质 | ||
1.一种代码评价方法,其特征在于,包括:
获取待评价代码文本;其中,所述待评价代码文本包括基础代码文本和对所述基础代码文本进行验证的验证代码文本;
对所述待评价代码文本进行编译,以确定所述基础代码文本中是否存在编译异常;
若所述基础代码文本中不存在编译异常,则运行所述待评价代码文本;
根据所述验证代码文本,对所述基础代码文本的原始输出结果进行验证。
2.根据权利要求1所述的方法,其特征在于,所述根据所述验证代码文本,对所述基础代码文本的原始输出结果进行验证,包括:
将获取到的基础代码文本的原始输出结果输入至所述验证代码文本的目标输出函数中,得到目标输出结果;其中,所述目标输出函数通过对基础代码文本中的输出函数进行重写得到;
根据所述目标输出结果,验证所述基础代码文本的原始输出结果是否正确。
3.根据权利要求2所述的方法,其特征在于,所述验证代码文本包括前置验证代码文本和后置验证代码文本;
相应的,所述将获取到的基础代码文本的原始输出结果输入至所述验证代码文本的目标输出函数中,得到目标输出结果,包括:
通过运行所述前置验证代码文本,配置所述目标输出函数;
通过运行所述后置验证代码文本,获取所述基础代码文本的原始输出结果,并调用所述目标输出函数;
将所述原始输出结果作为所述目标输出函数的输入,得到目标输出结果。
4.根据权利要求1所述的方法,其特征在于,所述对所述待评价代码文本进行编译,包括:
对所述待评价代码文本进行静态解析,以检测所述待评价代码文本中是否存在解析异常;
若所述待评价代码文本中不存在解析异常,则对所述待评价代码文本进行编译。
5.根据权利要求4所述的方法,其特征在于,所述待评价代码文本包括预置代码文本;所述预置代码文本为构建基础代码文本的框架的固定代码;
所述解析异常包括所述预置代码文本的文本异常;相应的,对所述待评价代码文本进行静态解析,以检测所述待评价代码文本中是否存在解析异常,包括:
将所述待评价代码文本与所述预置代码文本进行字符匹配;
根据匹配结果,确定所述待评价代码文本是否存在文本异常。
6.根据权利要求4所述的方法,其特征在于,所述解析异常包括预设编写异常;
相应的,对所述待评价代码文本进行静态解析,以检测所述待评价代码文本中是否存在解析异常,包括:
根据预先设定的正则表达式,将所述待评价代码文本与预先建立的预设编写异常数据库进行匹配;
根据匹配结果,确定所述待评价代码文本中是否存在预设编写异常。
7.根据权利要求6所述的方法,其特征在于,所述根据匹配结果,判定所述待评价代码文本中是否存在预设编写异常,包括:
若检测到所述待评价代码文本中包含符合预设异常正则表达式的语句,则确定相应语句存在预设编写异常;
和/或,
若检测到所述待评价代码文本中包含不符合预设标准正则表达式的语句,则确定相应语句存在预设编写异常。
8.一种代码评价装置,其特征在于,包括:
待评价代码文本获取模块,用于获取待评价代码文本;其中,所述待评价代码文本包括基础代码文本和对所述基础代码文本进行验证的验证代码文本;
编译异常确定模块,用于对所述待评价代码文本进行编译,以确定所述基础代码文本中是否存在编译异常;
待评价代码文本运行模块,用于若所述基础代码文本中不存在编译异常,则运行所述待评价代码文本;
原始输出结果验证模块,用于根据所述验证代码文本,对所述基础代码文本的原始输出结果进行验证。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京聪明核桃教育科技有限公司,未经北京聪明核桃教育科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210660634.4/1.html,转载请声明来源钻瓜专利网。