[发明专利]测试代码生成方法、装置、计算机系统及介质在审
申请号: | 202110133183.4 | 申请日: | 2021-01-29 |
公开(公告)号: | CN113778848A | 公开(公告)日: | 2021-12-10 |
发明(设计)人: | 南夷非;魏珊珊;董英姿;王浩;胡景贺;颜伟鹏 | 申请(专利权)人: | 北京沃东天骏信息技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/41 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 孙蕾 |
地址: | 100176 北京市大兴区北京经济*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试 代码 生成 方法 装置 计算机系统 介质 | ||
本公开提供了一种测试代码生成方法,包括:接收用于生成测试代码的指令,其中,测试代码用于测试待测试项目中的源代码文件;响应于指令,获取待测试项目中的源代码文件;将源代码文件转换成抽象语法树;对抽象语法树进行分析,获取源代码文件的元数据信息和逻辑结构信息;根据元数据信息和逻辑结构信息,确定目标测试代码模板文件;以及将元数据信息填充到目标测试代码模板文件中,生成测试代码。本公开还提供了测试代码生成装置、计算机系统、可读存储介质以及计算机程序产品。
技术领域
本公开涉及计算机技术领域,更具体地,涉及一种测试代码生成方法、装置、计算机系统、可读存储介质及计算机程序产品。
背景技术
在项目应用开发中,项目代码质量直接影响着产品的用户体验,因而高质量的代码输出,尽可能减少逻辑出错具有十分重要的意义。为了保证代码质量,对项目中的每一个模块进行单元测试是开发过程中必不可缺的环节。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:现有测试代码需要编写较多重复的内容来提供运行环境,效率低下。
发明内容
有鉴于此,本公开提供了一种测试代码生成方法、装置、计算机系统、可读存储介质及计算机程序产品。
本公开的一个方面提供了一种测试代码生成方法,包括:
接收用于生成测试代码的指令,其中,测试代码用于测试待测试项目中的源代码文件;
响应于指令,获取待测试项目中的源代码文件;
将源代码文件转换成抽象语法树;
对抽象语法树进行分析,获取源代码文件的元数据信息和逻辑结构信息;
根据元数据信息和逻辑结构信息,确定目标测试代码模板文件;以及
将元数据信息填充到目标测试代码模板文件中,生成测试代码。
根据本公开的实施例,其中,对抽象语法树进行分析,获取源代码文件的元数据信息和逻辑结构信息包括:
对抽象语法树进行词法分析,获取源代码文件的元数据信息;
对抽象语法树进行语义分析,获取源代码文件的逻辑结构信息。
根据本公开的实施例,其中,对抽象语法树进行词法分析,获取源代码文件的元数据信息包括:
对抽象语法树进行词法分析,确定抽象语法树中是否包括请求标识字符;以及
在抽象语法树中包括请求标识字符的情况下,获取源代码文件的元数据信息;其中,元数据信息包括请求接口信息和请求返回信息;其中,目标测试代码模板文件包括与请求标识字符对应的测试代码模板文件。
根据本公开的实施例,其中,响应于指令,获取待测试项目中的源代码文件包括:
在待测试项目的运行环境中,响应于指令;
基于待测试项目的项目目录,遍历待测试项目中的项目文件;
解析项目文件,获取脚本对象;以及
基于脚本对象,获取源代码文件。
根据本公开的实施例,其中,待测试项目中包括多个源代码文件;
测试代码生成方法还包括:
确定多个源代码文件中的每个源代码文件是否已经生成对应的测试代码;
在源代码文件已经生成对应的测试代码的情况下,基于待测试项目的项目目录,遍历多个源代码文件中的下一个源代码文件;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京沃东天骏信息技术有限公司,未经北京沃东天骏信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110133183.4/2.html,转载请声明来源钻瓜专利网。