CN115114175A - 一种前端项目规范化检测方法及装置 - Google Patents
一种前端项目规范化检测方法及装置 Download PDFInfo
- Publication number
- CN115114175A CN115114175A CN202211043850.0A CN202211043850A CN115114175A CN 115114175 A CN115114175 A CN 115114175A CN 202211043850 A CN202211043850 A CN 202211043850A CN 115114175 A CN115114175 A CN 115114175A
- Authority
- CN
- China
- Prior art keywords
- item
- detection
- file
- detected
- scanning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3616—Software analysis for verifying properties of programs using software metrics
Abstract
本申请提供一种前端项目规范化检测方法及装置,该方法包括:当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;获取待检测项目的符合规范检测的文件列表;根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果;根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件;如果否,则根据代码保存指令对待检测项目进行存储操作。可见,该方法能够自动对前端项目进行规范化检查,检查效率高,不受人工主观影响,从而有效避免了遗漏等检查失误的情况出现,进而有利于提升项目产品质量。
Description
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种前端项目规范化检测方法及装置。
背景技术
目前,前端规范是项目开发中提升项目可维护性和代码可读性的一项重要内容,对多人协作的团队尤其要重。现有的前端项目规范化检测方法,通常是在代码评审阶段对现有页面和新增页面进行人工排查。然而,在实践中发现,现有的人工检查方法,检查效率低,同时人工检查受主观影响,存在遗漏等检查失误的情况,从而降低项目产品质量。
发明内容
本申请实施例的目的在于提供一种前端项目规范化检测方法及装置,能够自动对前端项目进行规范化检查,检查效率高,不受人工主观影响,从而有效避免了遗漏等检查失误的情况出现,进而有利于提升项目产品质量。
本申请实施例第一方面提供了一种前端项目规范化检测方法,包括:
当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;
在进入所述ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;
获取所述待检测项目的符合规范检测的文件列表;
根据所述检测项列表对所述文件列表中的每个文件进行扫描检测,得到扫描检测结果;
根据所述扫描检测结果,判断所述文件列表中是否有不符合规范校验的目标文件;
如果否,则根据所述代码保存指令对所述待检测项目进行存储操作。
在上述实现过程中,该方法可以在接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;并在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;然后,获取待检测项目的符合规范检测的文件列表;并根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果;再然后根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件;并在文件列表中没有不符合规范校验的目标文件时,根据代码保存指令对待检测项目进行存储操作。可见,实施这种实施方式,能够自动对前端项目进行规范化检查,检查效率高,不受人工主观影响,从而有效避免了遗漏等检查失误的情况出现,进而有利于提升项目产品质量。
进一步地,所述方法还包括:
通过脚本对待检测项目注入ISC检测工具,同时增加所述待检测项目对应的本地代码检查算法。
进一步地,所述获取所述待检测项目的符合规范检测的文件列表,包括:
对所述待检测项目当前的版本分支改动记录进行扫描,得到版本分支改动记录;
获取所述待检测项目对应的主分支版本改动记录;
对比所述主分支版本改动记录和所述版本分支改动记录,得到版本变更记录;
根据所述版本变更记录和预设的过滤条件,获取所述待检测项目的符合规范检测的文件列表。
进一步地,所述方法还包括:
当判断出所述文件列表中有不符合规范校验的目标文件时,获取所述目标文件的文件数据和所述目标文件的文件标识;
输出包括所述文件数据和所述文件标识的校验不规范提示信息。
进一步地,所述根据所述扫描检测结果,判断所述文件列表中是否有不符合规范校验的目标文件,包括:
判断是否预设有规则项配置;
如果有所述规则项配置,则根据所述扫描检测结果判断是否有不符合所述规则项配置中规定的硬性要求的雷区文件;
如果有所述雷区文件,则直接输出异常提示信息,并阻塞所述代码保存指令执行;
如果没有所述雷区文件,则根据所述扫描检测结果判断是否所述文件列表中是否有不符合规范校验的目标文件;
如果否,执行所述的根据所述代码保存指令对所述待检测项目进行存储操作。
本申请实施例第二方面提供了一种前端项目规范化检测装置,所述前端项目规范化检测装置包括:
触发单元,用于当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;
合并单元,用于在进入所述ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;
获取单元,用于获取所述待检测项目的符合规范检测的文件列表;
扫描检测单元,用于根据所述检测项列表对所述文件列表中的每个文件进行扫描检测,得到扫描检测结果;
判断单元,用于根据所述扫描检测结果,判断所述文件列表中是否有不符合规范校验的目标文件;
存储单元,用于当判断出所述文件列表中没有不符合规范校验的目标文件时,则根据所述代码保存指令对所述待检测项目进行存储操作。
在上述实现过程中,该前端项目规范化检测装置可以通过触发单元在接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;通过合并单元在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;通过获取单元获取待检测项目的符合规范检测的文件列表;通过扫描检测单元来根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果;通过判断单元来根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件;通过存储单元在判断出文件列表中没有不符合规范校验的目标文件时,则根据代码保存指令对待检测项目进行存储操作。可见,实施这种实施方式,能够自动对前端项目进行规范化检查,检查效率高,不受人工主观影响,从而有效避免了遗漏等检查失误的情况出现,进而有利于提升项目产品质量。
进一步地,所述前端项目规范化检测装置还包括:
预先配置单元,用于通过脚本对待检测项目注入ISC检测工具,同时增加所述待检测项目对应的本地代码检查算法。
进一步地,所述获取单元包括:
扫描子单元,用于对所述待检测项目当前的版本分支改动记录进行扫描,得到版本分支改动记录;
获取子单元,用于获取所述待检测项目对应的主分支版本改动记录;
对比子单元,用于对比所述主分支版本改动记录和所述版本分支改动记录,得到版本变更记录;
所述获取子单元,还用于根据所述版本变更记录和预设的过滤条件,获取所述待检测项目的符合规范检测的文件列表。
进一步地,所述前端项目规范化检测装置还包括:
所述获取单元,还用于当判断出所述文件列表中有不符合规范校验的目标文件时,获取所述目标文件的文件数据和所述目标文件的文件标识;
输出单元,用于输出包括所述文件数据和所述文件标识的校验不规范提示信息。
进一步地,所述判断单元包括:
判断子单元,用于判断是否预设有规则项配置;
所述判断子单元,还用于如果有所述规则项配置,则根据所述扫描检测结果判断是否有不符合所述规则项配置中规定的硬性要求的雷区文件;
阻塞子单元,用于如果有所述雷区文件,则直接输出异常提示信息,并阻塞所述代码保存指令执行;
所述判断子单元,用于如果没有所述雷区文件,则根据所述扫描检测结果判断是否所述文件列表中是否有不符合规范校验的目标文件;并在所述文件列表中没有不符合规范校验的目标文件时,触发所述存储单元执行所述的根据所述代码保存指令对所述待检测项目进行存储操作。
本申请实施例第三方面提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例第一方面中任一项所述的前端项目规范化检测方法。
本申请实施例第四方面提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例第一方面中任一项所述的前端项目规范化检测方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种前端项目规范化检测方法的流程示意图;
图2为本申请实施例提供的一种前端项目规范化检测方法的流程示意图;
图3为本申请实施例提供的一种前端项目规范化检测装置的结构示意图;
图4为本申请实施例提供的一种前端项目规范化检测装置的结构示意图;
图5为本申请实施例提供的一种ISC校验输出实例示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
请参看图1,图1为本申请实施例提供了一种前端项目规范化检测方法的流程示意图。其中,该前端项目规范化检测方法包括:
S101、当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程。
本实施例中,本地代码检查算法为项目本地pre-commit钩子。
本实施例中,ISC为Insurance source check的缩写。其中,ISC检测工具用于指代前端项目规范化检测工具;具体的,ISC检测工具用于对保险项目中的数据源代码进行检测。
S102、在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表。
本实施例中,公共规范为同类项目,或同一业务功能项目共有的规范,自定义规范为某个项目特有属性规范,可由项目所属团队根据需要自行制定。
S103、获取待检测项目的符合规范检测的文件列表。
S104、根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果。
本实施例中,检测项的具体实现过程分两种情况,第一种是非js脚本内容,这种检测是通过正则表达式的方式将校验内容匹配出来,看是否符合规范;第二种是js脚本内容,包括.js文件和含js脚本的DSL特定语言文件(这种是通过语言官方的解析模块将js部分提取出来)通过分析AST(抽象语法树)来检测内容是否符合规范。使用哪一种校验,则由规范项的具体实现为准。
S105、根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件,若是,则结束本流程;若否,则执行步骤S106。
S106、根据代码保存指令对待检测项目进行存储操作。
实施这种实施方式,能够针对项目个性化的一些规范检测上由人工处理带来的问题,从而实现自动化检测的。
本实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
可见,实施本实施例所描述的前端项目规范化检测方法,能够采用ISC规范检测工具,基于公共规范配置和项目自定义配置对不同项目不同个性化规范进行灵活的自动化检测,从而使得开发人员能够在推送代码前自动按规则配置执行规范检测,避免了代码评审阶段需要人工检查这些规范是否会出现不良影响。同时,通过ISC配置不同级别的规范,能够对强制执行的规范进行严格管控,从而使得开发人员无法对未通过的内容进行commit代码操作,进而有效地控制代码质量,并对团队项目规范的推动、执行、检测质量起到了重要的作用。另外,由于ISC是不区分团队和项目,能够使得它在各个部门和团队中都可以使用,在其使用时不同团队只需要根据自己的项目和需要,配置已有的公共规范,从而完成有效的自定义项目规范,进而提高本方法的通用性。
实施例2
请参看图2,图2为本申请实施例提供了一种前端项目规范化检测方法的流程示意图。其中,该前端项目规范化检测方法包括:
S201、通过脚本对待检测项目注入ISC检测工具,同时增加待检测项目对应的本地代码检查算法。
本实施例中,该方法可以通过脚本对项目注入ISC检测工具,同时增加项目本地pre-commit钩子。
S202、当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程。
本实施例中,该方法可以在开发人员commit代码的时候会自动执行pre-commit钩子开始执行ISC检测流程。
S203、在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表。
本实施例中,在进入ISC检测流程后,首先会合并公共规范和项目自定为规范,生成检测项列表。
在本实施例中,公共规范为同类项目,或同一业务功能项目共有的规范,自定义规范为某个项目特有属性规范,可由项目所属团队根据需要自行制定。
S204、对待检测项目当前的版本分支改动记录进行扫描,得到版本分支改动记录。
本实施例中,该方法可以在获取配置后,通过ISC开始对项目当前版本分支改动记录进行扫描,对比主分支后获取到版本变更记录,结合配置过滤出符合规范检测的文件列表。
S205、获取待检测项目对应的主分支版本改动记录。
S206、对比主分支版本改动记录和版本分支改动记录,得到版本变更记录。
S207、根据版本变更记录和预设的过滤条件,获取待检测项目的符合规范检测的文件列表。
S208、根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果。
本实施例中,该方法可以遍历文件列表开始进行上述步骤中的检测项逐个检测。
S209、根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件,若是,则执行步骤S210~S211;若否,则执行步骤S212。
作为一种可选的实施方式,根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件,包括:
判断是否预设有规则项配置;
如果有规则项配置,则根据扫描检测结果判断是否有不符合规则项配置中规定的硬性要求的雷区文件;
如果有雷区文件,则直接输出异常提示信息,并阻塞代码保存指令执行;
如果没有雷区文件,则根据扫描检测结果判断是否文件列表中是否有不符合规范校验的目标文件;
如果否,执行的根据代码保存指令对待检测项目进行存储操作。
本实施例中,该方法可以根据规则项配置,并在某项规则是硬性要求时,对不通过校验的内容直接抛出异常,并阻塞代码commit执行。
本实施例中,当有不符合规范校验的时候,该方法可以将具体的检测文件以及不符合的规范名称打印出来。打印结果如图5所示,图5是一种ISC校验输出实例示意图。具体的,该图能够输出规范项强制校验不通过的实例。
S210、获取目标文件的文件数据和目标文件的文件标识。
S211、输出包括文件数据和文件标识的校验不规范提示信息,并结束本流程。
S212、根据代码保存指令对待检测项目进行存储操作。
本实施例中,所有规范校验通过则按原有正常流程提交代码即可。
实施这种实施方式,能够在开发阶段不对开发人员增加任何负担和副作用的前提下,通过支持公共规范和项目自定义规范配置的自由组合,满足任意项目的个性化规范的自动化检测,提前帮助开发人员发现问题,有利于提升代码交付质量。
本实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
可见,实施本实施例所描述的前端项目规范化检测方法,能够采用ISC规范检测工具,基于公共规范配置和项目自定义配置对不同项目不同个性化规范进行灵活的自动化检测,从而使得开发人员能够在推送代码前自动按规则配置执行规范检测,避免了代码评审阶段需要人工检查这些规范是否会出现不良影响。同时,通过ISC配置不同级别的规范,能够对强制执行的规范进行严格管控,从而使得开发人员无法对未通过的内容进行commit代码操作,进而有效地控制代码质量,并对团队项目规范的推动、执行、检测质量起到了重要的作用。另外,由于ISC是不区分团队和项目,能够使得它在各个部门和团队中都可以使用,在其使用时不同团队只需要根据自己的项目和需要,配置已有的公共规范,从而完成有效的自定义项目规范,进而提高本方法的通用性。
实施例3
请参看图3,图3为本申请实施例提供的一种前端项目规范化检测装置的结构示意图。如图3所示,该前端项目规范化检测装置包括:
触发单元310,用于当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;
合并单元320,用于在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;
获取单元330,用于获取待检测项目的符合规范检测的文件列表;
扫描检测单元340,用于根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果;
判断单元350,用于根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件;
存储单元360,用于当判断出文件列表中没有不符合规范校验的目标文件时,则根据代码保存指令对待检测项目进行存储操作。
本实施例中,对于前端项目规范化检测装置的解释说明可以参照实施例1或实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的前端项目规范化检测装置,能够采用ISC规范检测工具,基于公共规范配置和项目自定义配置对不同项目不同个性化规范进行灵活的自动化检测,从而使得开发人员能够在推送代码前自动按规则配置执行规范检测,避免了代码评审阶段需要人工检查这些规范是否会出现不良影响。同时,通过ISC配置不同级别的规范,能够对强制执行的规范进行严格管控,从而使得开发人员无法对未通过的内容进行commit代码操作,进而有效地控制代码质量,并对团队项目规范的推动、执行、检测质量起到了重要的作用。另外,由于ISC是不区分团队和项目,能够使得它在各个部门和团队中都可以使用,在其使用时不同团队只需要根据自己的项目和需要,配置已有的公共规范,从而完成有效的自定义项目规范,进而提高本装置的通用性。
实施例4
请参看图4,图4为本申请实施例提供的一种前端项目规范化检测装置的结构示意图。如图4所示,该前端项目规范化检测装置包括:
触发单元310,用于当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;
合并单元320,用于在进入ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;
获取单元330,用于获取待检测项目的符合规范检测的文件列表;
扫描检测单元340,用于根据检测项列表对文件列表中的每个文件进行扫描检测,得到扫描检测结果;
判断单元350,用于根据扫描检测结果,判断文件列表中是否有不符合规范校验的目标文件;
存储单元360,用于当判断出文件列表中没有不符合规范校验的目标文件时,则根据代码保存指令对待检测项目进行存储操作。
作为一种可选的实施方式,前端项目规范化检测装置还包括:
预先配置单元370,用于通过脚本对待检测项目注入ISC检测工具,同时增加待检测项目对应的本地代码检查算法。
作为一种可选的实施方式,获取单元330包括:
扫描子单元331,用于对待检测项目当前的版本分支改动记录进行扫描,得到版本分支改动记录;
获取子单元332,用于获取待检测项目对应的主分支版本改动记录;
对比子单元333,用于对比主分支版本改动记录和版本分支改动记录,得到版本变更记录;
获取子单元332,还用于根据版本变更记录和预设的过滤条件,获取待检测项目的符合规范检测的文件列表。
作为一种可选的实施方式,前端项目规范化检测装置还包括:
获取单元330,还用于当判断出文件列表中有不符合规范校验的目标文件时,获取目标文件的文件数据和目标文件的文件标识;
输出单元370,用于输出包括文件数据和文件标识的校验不规范提示信息。
作为一种可选的实施方式,判断单元350包括:
判断子单元,用于判断是否预设有规则项配置;
判断子单元351,还用于如果有规则项配置,则根据扫描检测结果判断是否有不符合规则项配置中规定的硬性要求的雷区文件;
阻塞子单元352,用于如果有雷区文件,则直接输出异常提示信息,并阻塞代码保存指令执行;
判断子单元351,用于如果没有雷区文件,则根据扫描检测结果判断是否文件列表中是否有不符合规范校验的目标文件;并在文件列表中没有不符合规范校验的目标文件时,触发存储单元执行的根据代码保存指令对待检测项目进行存储操作。
本实施例中,对于前端项目规范化检测装置的解释说明可以参照实施例1或实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的前端项目规范化检测装置,能够采用ISC规范检测工具,基于公共规范配置和项目自定义配置对不同项目不同个性化规范进行灵活的自动化检测,从而使得开发人员能够在推送代码前自动按规则配置执行规范检测,避免了代码评审阶段需要人工检查这些规范是否会出现不良影响。同时,通过ISC配置不同级别的规范,能够对强制执行的规范进行严格管控,从而使得开发人员无法对未通过的内容进行commit代码操作,进而有效地控制代码质量,并对团队项目规范的推动、执行、检测质量起到了重要的作用。另外,由于ISC是不区分团队和项目,能够使得它在各个部门和团队中都可以使用,在其使用时不同团队只需要根据自己的项目和需要,配置已有的公共规范,从而完成有效的自定义项目规范,进而提高本装置的通用性。
本申请实施例提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例1或实施例2中的前端项目规范化检测方法。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例1或实施例2中的前端项目规范化检测方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种前端项目规范化检测方法,其特征在于,包括:
当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;
在进入所述ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;
获取所述待检测项目的符合规范检测的文件列表;
根据所述检测项列表对所述文件列表中的每个文件进行扫描检测,得到扫描检测结果;
根据所述扫描检测结果,判断所述文件列表中是否有不符合规范校验的目标文件;
如果否,则根据所述代码保存指令对所述待检测项目进行存储操作。
2.根据权利要求1所述的前端项目规范化检测方法,其特征在于,所述方法还包括:
通过脚本对待检测项目注入ISC检测工具,同时增加所述待检测项目对应的本地代码检查算法。
3.根据权利要求1所述的前端项目规范化检测方法,其特征在于,所述获取所述待检测项目的符合规范检测的文件列表,包括:
对所述待检测项目当前的版本分支改动记录进行扫描,得到版本分支改动记录;
获取所述待检测项目对应的主分支版本改动记录;
对比所述主分支版本改动记录和所述版本分支改动记录,得到版本变更记录;
根据所述版本变更记录和预设的过滤条件,获取所述待检测项目的符合规范检测的文件列表。
4.根据权利要求1所述的前端项目规范化检测方法,其特征在于,所述方法还包括:
当判断出所述文件列表中有不符合规范校验的目标文件时,获取所述目标文件的文件数据和所述目标文件的文件标识;
输出包括所述文件数据和所述文件标识的校验不规范提示信息。
5.根据权利要求1所述的前端项目规范化检测方法,其特征在于,所述根据所述扫描检测结果,判断所述文件列表中是否有不符合规范校验的目标文件,包括:
判断是否预设有规则项配置;
如果有所述规则项配置,则根据所述扫描检测结果判断是否有不符合所述规则项配置中规定的硬性要求的雷区文件;
如果有所述雷区文件,则直接输出异常提示信息,并阻塞所述代码保存指令执行;
如果没有所述雷区文件,则根据所述扫描检测结果判断是否所述文件列表中是否有不符合规范校验的目标文件;
如果否,执行所述的根据所述代码保存指令对所述待检测项目进行存储操作。
6.一种前端项目规范化检测装置,其特征在于,所述前端项目规范化检测装置包括:
触发单元,用于当接收到待检测项目的代码保存指令时,触发预先部署的本地代码检查算法通过ISC检测工具执行ISC检测流程;
合并单元,用于在进入所述ISC检测流程后,合并预设的公共规范和预设的项目自定义规范,得到检测项列表;
获取单元,用于获取所述待检测项目的符合规范检测的文件列表;
扫描检测单元,用于根据所述检测项列表对所述文件列表中的每个文件进行扫描检测,得到扫描检测结果;
判断单元,用于根据所述扫描检测结果,判断所述文件列表中是否有不符合规范校验的目标文件;
存储单元,用于当判断出所述文件列表中没有不符合规范校验的目标文件时,则根据所述代码保存指令对所述待检测项目进行存储操作。
7.根据权利要求6所述的前端项目规范化检测装置,其特征在于,所述前端项目规范化检测装置还包括:
预先配置单元,用于通过脚本对待检测项目注入ISC检测工具,同时增加所述待检测项目对应的本地代码检查算法。
8.根据权利要求6所述的前端项目规范化检测装置,其特征在于,所述获取单元包括:
扫描子单元,用于对所述待检测项目当前的版本分支改动记录进行扫描,得到版本分支改动记录;
获取子单元,用于获取所述待检测项目对应的主分支版本改动记录;
对比子单元,用于对比所述主分支版本改动记录和所述版本分支改动记录,得到版本变更记录;
所述获取子单元,还用于根据所述版本变更记录和预设的过滤条件,获取所述待检测项目的符合规范检测的文件列表。
9.一种电子设备,其特征在于,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行权利要求1至5中任一项所述的前端项目规范化检测方法。
10.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行权利要求1至5任一项所述的前端项目规范化检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211043850.0A CN115114175A (zh) | 2022-08-30 | 2022-08-30 | 一种前端项目规范化检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211043850.0A CN115114175A (zh) | 2022-08-30 | 2022-08-30 | 一种前端项目规范化检测方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115114175A true CN115114175A (zh) | 2022-09-27 |
Family
ID=83336240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211043850.0A Pending CN115114175A (zh) | 2022-08-30 | 2022-08-30 | 一种前端项目规范化检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115114175A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063310A (zh) * | 2013-03-22 | 2014-09-24 | 阿里巴巴集团控股有限公司 | Web前端质量检测方法与装置 |
CN106095681A (zh) * | 2016-06-14 | 2016-11-09 | 深圳市彬讯科技有限公司 | 一种SVN集成JSHint代码检测方法及其系统 |
CN110298659A (zh) * | 2019-04-12 | 2019-10-01 | 同济大学 | 基于矩阵计算的系统检测方法、系统、介质及设备 |
CN113672517A (zh) * | 2021-09-06 | 2021-11-19 | 网易(杭州)网络有限公司 | 一种代码检查方法、装置、电子设备和介质 |
CN113760729A (zh) * | 2021-01-26 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种代码检测方法和装置 |
-
2022
- 2022-08-30 CN CN202211043850.0A patent/CN115114175A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104063310A (zh) * | 2013-03-22 | 2014-09-24 | 阿里巴巴集团控股有限公司 | Web前端质量检测方法与装置 |
CN106095681A (zh) * | 2016-06-14 | 2016-11-09 | 深圳市彬讯科技有限公司 | 一种SVN集成JSHint代码检测方法及其系统 |
CN110298659A (zh) * | 2019-04-12 | 2019-10-01 | 同济大学 | 基于矩阵计算的系统检测方法、系统、介质及设备 |
CN113760729A (zh) * | 2021-01-26 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种代码检测方法和装置 |
CN113672517A (zh) * | 2021-09-06 | 2021-11-19 | 网易(杭州)网络有限公司 | 一种代码检查方法、装置、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812427B2 (en) | Forgotten attachment detection | |
US20070271617A1 (en) | Vulnerability check program, vulnerability check apparatus, and vulnerability check method | |
US11176329B2 (en) | Source code compiler using natural language input | |
CN111753817B (zh) | 信息处理的方法及装置、电子设备及计算机可读存储介质 | |
US11657151B2 (en) | System and method for detecting source code anomalies | |
US20200125532A1 (en) | Fingerprints for open source code governance | |
CN109284331B (zh) | 基于业务数据资源的制证信息获取方法、终端设备及介质 | |
CN110929110A (zh) | 一种电子文档检测方法、装置、设备及存储介质 | |
JP5077455B2 (ja) | 脆弱性監査プログラム、脆弱性監査装置、脆弱性監査方法 | |
CN110688823B (zh) | Xml文件验证方法及装置 | |
CN115114175A (zh) | 一种前端项目规范化检测方法及装置 | |
CN110231921B (zh) | 日志打印方法、装置、设备及计算机可读存储介质 | |
JP5188421B2 (ja) | ソースコード解析方法およびソースコード解析支援システム | |
CN112882707B (zh) | 一种渲染方法、装置、存储介质及电子设备 | |
CN111027073B (zh) | 漏洞检测方法、装置、设备及存储介质 | |
CN110321271B (zh) | 基于Monkey获取异常信息的方法、装置、设备及存储介质 | |
JP2008020972A (ja) | ソフトウエア解析システム | |
CN113779620A (zh) | 程序文件的校验方法、装置、存储介质及计算机设备 | |
CN113037521A (zh) | 识别通讯设备状态的方法、通讯系统及存储介质 | |
CN116483377B (zh) | 一种代码检测方法、装置、电子设备及存储介质 | |
WO2021121338A1 (en) | Fingerprints for open source code governance | |
US20220311873A1 (en) | Information processing device, computer readable medium and information processing method | |
JP2017220009A (ja) | 解析プログラム、解析方法、及び解析装置 | |
CN115878487A (zh) | 一种接口核对方法及装置 | |
CN117312165A (zh) | 不规范的Spring注解调用的识别方法、系统及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220927 |