[发明专利]一种依赖包安装用时分析方法、装置、设备及存储介质有效
申请号: | 202310332222.2 | 申请日: | 2023-03-31 |
公开(公告)号: | CN116028108B | 公开(公告)日: | 2023-06-06 |
发明(设计)人: | 吕宗远;李伟 | 申请(专利权)人: | 深圳复临科技有限公司 |
主分类号: | G06F8/71 | 分类号: | G06F8/71;G06F8/61 |
代理公司: | 深圳市世联合知识产权代理有限公司 44385 | 代理人: | 刘畅 |
地址: | 518000 广东省深圳市南山区粤海街*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 依赖 安装 用时 分析 方法 装置 设备 存储 介质 | ||
本申请公开了一种依赖包安装用时分析方法、装置、设备及存储介质,涉及软件开发技术领域。本申请创建核心逻辑代码文件和依赖包配置文件,通过第一解析函数对依赖包配置文件进行解析,得到依赖包对象,通过第二解析函数对依赖包对象进行解析,得到所有依赖包的名称和版本号,基于所有依赖包的名称和版本号构建依赖项数组,其中,每一个依赖包对应依赖项数组的一个元素项,为依赖项数组中的每一个元素项分别创建一个空白文件夹,将每一个依赖包安装到对应的空白文件夹中,调用计时子进程计算每一个依赖包的安装用时。本申请能够快速分析出依赖包安装耗时,便于开发者进行性能优化。
技术领域
本申请涉及软件开发技术领域,具体涉及一种依赖包安装用时分析方法、装置、设备及存储介质。
背景技术
在搭建项目环境或者切换Web应用不同的源码版本时,特别是项目非常大时,由于依赖变动,需要重新安装全部依赖,安装进度经常会卡住,因此需要知道哪些依赖包安装消耗的时间最多。
目前用于测量依赖包安装用时的工具,可以分析webpack生成的捆绑包并显示其大小和组成,可以帮助开发者识别捆绑包中最大的模块和依赖项。但是该工具只能分析引入的依赖包的大小,实际项目开发中会有很多使用到的依赖却没有被引入到项目中,所以无法统计这种类型的依赖包安装用时,并且安装依赖时,与网络环境也有很大关系,单纯统计包的大小会存在较大误差,并非真实的安装用时。
发明内容
本申请实施例的目的在于提出一种依赖包安装用时分析方法、装置、计算机设备及存储介质,以解决现有依赖包安装用时的工具存在的无法统计所有类型的依赖包安装用时,以及单纯统计包的大小来分析安装用时导致统计的依赖包安装用时不准确的技术问题。
为了解决上述技术问题,本申请实施例提供一种依赖包安装用时分析方法,采用了如下所述的技术方案:
一种依赖包安装用时分析方法,包括:
创建待测试目标项目,并在所述待测试目标项目中创建核心逻辑代码文件和依赖包配置文件,基于所述核心逻辑代码文件创建计时子进程;
通过预设的第一解析函数对所述依赖包配置文件进行解析,得到依赖包对象;
通过预设的第二解析函数对所述依赖包对象进行解析,得到所述待测试目标项目中所有依赖包的名称和版本号;
基于所述待测试目标项目中所有依赖包的名称和版本号构建依赖项数组,其中,每一个依赖包对应所述依赖项数组的一个元素项;
遍历所述依赖项数组,为所述依赖项数组中的每一个元素项分别创建一个空白文件夹;
执行依赖包安装命令,将每一个依赖包安装到对应的所述空白文件夹中,调用所述计时子进程计算每一个依赖包的安装用时。
进一步地,所述依赖包配置文件为package.json文件,所述第一解析函数为getDeps()函数,所述通过预设的第一解析函数对所述依赖包配置文件进行解析,得到依赖包对象,具体包括:
调用nodejs内置的require命令读取package.json文件,并调用getDeps()函数解析package.json文件,得到依赖包的依赖项属性,其中,所述依赖包的依赖项属性包括生产环境需要的依赖和开发环境中需要的依赖;
将所述依赖包的依赖项属性存储在一个对象中,生成依赖包对象。
进一步地,所述第二解析函数为Object.keys函数,所述通过预设的第二解析函数对所述依赖包对象进行解析,得到所述待测试目标项目中所有依赖包的名称和版本号,具体包括:
通过Object.keys函数解析所述依赖包对象中的依赖项属性,得到所述待测试目标项目中所有依赖包的名称和版本号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳复临科技有限公司,未经深圳复临科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310332222.2/2.html,转载请声明来源钻瓜专利网。