CN113934448A - 一种代码质量扫描方法、装置、存储介质及电子设备 - Google Patents

一种代码质量扫描方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN113934448A
CN113934448A CN202111207391.0A CN202111207391A CN113934448A CN 113934448 A CN113934448 A CN 113934448A CN 202111207391 A CN202111207391 A CN 202111207391A CN 113934448 A CN113934448 A CN 113934448A
Authority
CN
China
Prior art keywords
scanning
component
mode
code
scanned
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
Application number
CN202111207391.0A
Other languages
English (en)
Inventor
杨晓明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Ziroom Information Technology Co Ltd
Original Assignee
Beijing Ziroom Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Ziroom Information Technology Co Ltd filed Critical Beijing Ziroom Information Technology Co Ltd
Priority to CN202111207391.0A priority Critical patent/CN113934448A/zh
Publication of CN113934448A publication Critical patent/CN113934448A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种代码质量扫描方法、装置、存储介质及电子设备,该方法包括获取扫描要求;根据扫描要求确定代码扫描的扫描模式,扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;根据扫描模式进行对待扫描组件进行扫描。通过实施本发明,根据扫描要求中的扫描模式实现了单组件扫描、组件依赖扫描或者整体项目扫描;由此,当仅需要对单个组件扫描时,采用单组件扫描模式,保证了扫描效率;同时组件依赖扫描时,将单组件和其依赖的组件一起扫描,保证依赖相关漏洞和依赖重复问题的完善;而整体项目扫描保证目标项目中相关漏洞和整体重复问题的完善。该方法能够从根本上解决组件代码质量扫描复杂、不完整、冗余扫描等问题。

Description

一种代码质量扫描方法、装置、存储介质及电子设备
技术领域
本发明涉及代码扫描技术领域,具体涉及一种代码质量扫描方法、装置、存储介质及电子设备。
背景技术
代码质量扫描是代码开发技术中的重要一环,受开发者的开发水平、个人能力、工作经验、开发环境等影响,编码阶段总会出现运行错误、编译异常、编码不规范等BUG。一方面,在项目代码提测后的阶段,受各种测试条件或测试人员的个人能力所限,导致BUG无法被复现,随后这些BUG就会被带入交付环境,存在生产隐患;另一方面不规范的代码或异常会对代码项目的架构设计、升级、扩展、兼容带来影响,不利于项目开发的良性发展。
而组件化是目前大部分公司都会使用的一种架构,组件化开发也是大型项目简化架构、节省成本的重要途径之一,是多项目混合开发中,代码高度复用的一种重要方法。随着组件化开发的推广,组件化相关工具与架构设计变得十分重要。
现阶段大部分公司对于组件化代码质量检测与管理都是采用传统方式,直接扫描代码源码,获得一个代码质量结果,反馈给开发或测试人员,这样的方式虽然能够满足代码检测与修改,但是经常会出现多项目间组件扫描重复,单项目扫描时间过长、扫描效率低下等问题。市场上缺少一种专门针对组件化进行代码组件单元性质的质量扫描、检测、管理的有效方案。
发明内容
有鉴于此,本发明实施例提供了涉及一种代码质量扫描方法、装置、存储介质及电子设备,以解决现有技术中对于组件化代码扫描时效率低下的技术问题。
本发明提出的技术方案如下:
本发明实施例第一方面提供一种代码质量扫描方法,包括:获取扫描要求;根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;根据所述扫描模式进行对待扫描组件进行扫描。
可选地,所述扫描要求包括:主动扫描要求和定时扫描要求;获取扫描要求之前,包括:根据待扫描组件生成组件列表,所述组件列表中包括组件名、编译信息、源码路径以及各组件的依赖关系。
可选地,根据所述扫描模式进行对待扫描组件进行扫描,包括:根据所述扫描模式将待扫描组件进行编译;当编译失败时,获取编译异常信息;当编译成功时,根据所述扫描模式对待扫描组件进行扫描。
可选地,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:当所述扫描模式为单组件扫描模式时,对待扫描组件进行扫描检测;收集单组件扫描的扫描结果。
可选地,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:当所述扫描模式为组件依赖扫描模式时,根据待扫描组件及组件列表获取待扫描组件的依赖组件;根据待扫描组件及其依赖组件形成依赖列表;对所述依赖列表进行循环扫描检测;收集组件依赖扫描的扫描结果。
可选地,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:根据待扫描组件以及整体项目扫描模式确定扫描的主项目;根据所述主项目中所有的组件进行合并;根据合并后的组件进行扫描检测;收集整体项目扫描的扫描结果。
可选地,根据所述扫描模式进行对待扫描组件进行扫描,包括:当所述扫描模式为单组件扫描模式时,对待扫描组件进行运行漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、单组件代码重复扫描;当所述扫描模式为组件依赖扫描模式时,对待扫描组件进行运行漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、依赖组件代码重复扫描;当所述扫描模式为组件依赖扫描模式时,对待扫描组件进行运行漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、整体项目代码重复扫描。
本发明实施例第二方面提供一种代码质量扫描装置,包括:要求获取模块,用于获取扫描要求;扫描模式确定模块,用于根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;扫描模块,用于根据所述扫描模式进行对待扫描组件进行扫描。
本发明实施例第三方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行如本发明实施例第一方面及第一方面任一项所述的代码质量扫描方法。
本发明实施例第四方面提供一种电子设备,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如本发明实施例第一方面及第一方面任一项所述的代码质量扫描方法。
本发明提供的技术方案,具有如下效果:
本发明实施例提供的代码质量扫描方法、装置、存储介质及电子设备,通过获取扫描要求,根据扫描要求中的扫描模式实现了单组件扫描、组件依赖扫描或者整体项目扫描;由此,当仅需要对单个组件扫描时,采用单组件扫描模式,保证了扫描效率;同时组件依赖扫描时,将单组件和其依赖的组件一起扫描,保证依赖相关漏洞和依赖重复问题的完善;而整体项目扫描保证目标项目中相关漏洞和整体重复问题的完善。因此,该代码质量扫描方法能够从根本上解决多项目、多组件的复杂设计的组件化架构中,组件代码质量扫描复杂、不完整、冗余扫描等问题。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的代码质量扫描方法的流程图;
图2是根据本发明另一实施例的代码质量扫描方法的流程图;
图3是根据本发明实施例的代码质量扫描装置的结构框图;
图4是根据本发明实施例提供的计算机可读存储介质的结构示意图;
图5是根据本发明实施例提供的电子设备的结构示意图。
具体实施方式
正如在背景技术中所述,目前在进行代码扫描时,通常是获取源代码,采用代码质量扫描工具针对源代码进行扫描检测,获取扫描检测结果后,直接将结果反馈给开发、测试等代码质量维护人员进行修改与优化。但是直接对源代码进行扫描,会产生很多问题。例如:某一整体功能模块编译情况作为代码质量重要一环被略过;多项目同时用到同一组件代码时,扫描检测结果不能反映这一组件在不同项目中的重复率、问题比例等实际情况;多项目扫描时,会有重复扫描情况出现,加大了扫描时长的同时,增加扫描服务器压力;单组件开发时,每次要进行整体扫描,加大了工作时长与扫描服务器负担;多组件扫描检测结果缺乏有效管理机制,开发人员不易寻找扫描检测出的问题,不能直接确定单个组件的代码质量等等。
有鉴于此,本发明实施例提供一种代码质量扫描方法,包括:获取扫描要求;根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;根据所述扫描模式进行对待扫描组件进行扫描。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种代码质量扫描方法,如图1所示,该方法包括如下步骤:
步骤S101:获取扫描要求。具体地,在采用代码质量扫描方法进行扫描时,可以接收外部输入的扫描要求,也可以按照预设的扫描要求进行扫描。其中,外部输入的扫描要求可以是主动扫描,即代码质量维护人员主动发起的,例如,当有提测、发版、代码统计等需求时可以发起主动扫描。预设的扫描要求可以是固定时间周期扫描或者说定时扫描,在定时扫描时,可以设置固定时间周期扫描一次。该固定时间周期可以根据实际需要确定。例如,可以是每一天或者每一周进行一次扫描。本发明实施例对具体时间周期不做限定。
步骤S102:根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式。
步骤S103:根据所述扫描模式进行对待扫描组件进行扫描。
具体地,当扫描要求为主动扫描时,可以根据主动扫描中给出的扫描模式进行扫描,例如当扫描模式为单组件扫描时,就对要扫描的单个组件进行扫描;当扫描模式为组件依赖扫描模式时,对具有依赖关系的组件进行扫描;当扫描模式为整体项目扫描时,对整体项目中的所有组件进行扫描。
此外,当扫描要求为定时扫描时,根据定时任务中设定的扫描模式进行扫描,该设定的扫描模式可以是单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式中的任意一种模式。其中,当根据定时扫描要求中的扫描模式进行扫描后,可以收集某一固定时间的所有扫描信息,并将这些信息统一归纳成为一个批次保存数据,保存当前的代码质量状态。由此,通过制定定时周期扫描,可以得出基于时间轴的数据趋势,通过不同角度查看代码的质量状态。
本发明实施例提供的代码质量扫描方法,通过获取扫描要求,根据扫描要求中的扫描模式实现了单组件扫描、组件依赖扫描或者整体项目扫描;由此,当仅需要对单个组件扫描时,采用单组件扫描模式,保证了扫描效率;同时组件依赖扫描时,将单组件和其依赖的组件一起扫描,保证依赖相关漏洞和依赖重复问题的完善;而整体项目扫描保证目标项目中相关漏洞和整体重复问题的完善。因此,该代码质量扫描方法能够从根本上解决多项目、多组件的复杂设计的组件化架构中,组件代码质量扫描复杂、不完整、冗余扫描等问题。
作为本发明实施例的一种可选的实施方式,在获取扫描要求之前,包括:根据待扫描组件生成组件列表,所述组件列表中包括组件名、编译信息、源码路径以及各组件的依赖关系。具体地,对于所有需要进行代码扫描的组件,可以将其设置在一个组件列表中,该组件列表中包含待扫描组件的基本信息。此外,当需要在该组件列表中新增组件时,可以将组件的基本信息包括编译信息、源码路径、和其他组件的依赖关系、和多项目的依赖关系均填充在组件列表中。其中,各组件的依赖关系是指一个组件使用到了另一个组件的功能,而将这个组件引入本组件中进行编译,则两个组件出现依赖关系。这两个组件代码上具有紧密的关联性。多项目的引用组件包括某一个组件可能被多个项目引用,那么这个组件和多个项目产生了依赖关系,代码具有紧密的关联性。
作为本发明实施例的一种可选的实施方式,根据所述扫描模式进行对待扫描组件进行扫描,包括:根据所述扫描模式将待扫描组件进行编译;当编译失败时,获取编译异常信息。当编译成功时,根据所述扫描模式对待扫描组件进行扫描。具体地,在进行代码质量扫描之前,可以先对待扫描组件进行编译,若编译失败,即编译过程异常,代码无法运行,这也是一种明显的代码错误问题;由此,可以获取编译异常信息作为代码扫描结果。
在一实施方式中,当扫描模式为单组件扫描时,可以直接对单组件进行编译,获取编译结果。当扫描模式为组件依赖扫描时,先根据组件列表获取组件依赖数据形成依赖列表;然后对依赖列表中的组件进行编译,获取编译结果。当扫描模式为整体项目扫描时,可以将该项目中的所有组件合并后进行编译,获取编译结果。
作为本发明实施例的一种可选的实施方式,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:当所述扫描模式为单组件扫描模式时,对待扫描组件进行扫描检测;收集单组件扫描的扫描结果。当所述扫描模式为组件依赖扫描模式时,根据待扫描组件及组件列表获取待扫描组件的依赖组件;根据待扫描组件及其依赖组件形成依赖列表;对所述依赖列表进行循环扫描检测;收集组件依赖扫描的扫描结果。根据待扫描组件以及整体项目扫描模式确定扫描的主项目;根据所述主项目中所有的组件进行合并;根据合并后的组件进行扫描检测;收集整体项目扫描的扫描结果。
在一实施方式中,当扫描模式为单组件扫描时,可以直接对待扫描的单个组件进行代码质量扫描检测,收集扫描检测数据如漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、单组件代码重复扫描等形成扫描结果。当扫描模式为组件依赖扫描时,可以根据当前待扫描组件在组件列表中获取该组件及其依赖组件形成依赖列表,然后循环获取依赖列表中各组件信息,对依赖列表中的各组件进行扫描检测,收集扫描检测数据如漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、依赖组件代码重复扫描等形成扫描结果。当扫描模式为整体项目扫描时,可以根据该扫描模式确定要扫描的主项目,获取主项目中所有组件,将所有组件合并进行扫描检测,收集扫描检测数据如漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、整体项目代码重复扫描等形成扫描结果。
其中,运行漏洞是指在运行代码的过程中出现的漏洞,例如崩溃、数据异常、显示异常等。代码漏洞是指运行可能无异常,但是书写代码具有潜在错误,或用法错误。代码不规范是指没有按照一定的开发规范书写代码,导致代码冗余、繁乱,可读性差,扩展性差。代码重复是指写了一模一样的代码,这些代码可以重复使用,造成代码体积过大,代码辨认麻烦等问题。依赖组件代码重复扫描是在对依赖列表进行整体扫描时,得到的待扫描组件和其依赖组件相关的漏洞及重复信息。整体项目代码重复扫描是指扫描主项目中的单个组件在整体项目中的关联漏洞和与整体项目的重复信息。
作为本发明实施例的一种可选的实施方式,该代码质量扫描方法按照如图2所示流程实现:根据待扫描组件生成组件列表,该组件列表中包含组件依赖关系;当新增组件时,向组件列表注册,将新增组件的基本信息增加到组件列表中;基于该组件列表可以设置周期扫描或者主动扫描;其中,主动扫描包括单个组件的扫描或者全体组件的扫描。当发起周期扫描或者单个组件的主动扫描时,确定相应扫描要求的扫描模式是单组件扫描模式、组件依赖扫描模式或整体项目扫描模式。
当确定扫描模式为单组件扫描时,先对组件进行编译,获取编译结果。若编译失败,则代码存在编译异常问题,收集编译异常信息加入到扫描结果中。当编译成功后,对组件进行代码质量扫描检测,收集扫描检测数据,形成扫描结果。
当确定扫描模式为组件依赖扫描时,获取待扫描组件及其依赖组件形成依赖列表;然后循环获取依赖类别中的组件信息,进行组件编译,获取编译结果。若编译失败,则代码存在编译异常问题,收集编译异常信息加入到扫描结果中。当编译成功后,循环依赖列表,进行代码质量扫描检测,收集扫描检测数据,形成扫描结果。
当确定扫描模式为整体项目扫描时,根据当前的项目列表确定需要扫描的主项目,获取主项目中的所有组件;将所有组件合并后进行编译,获取编译结果。若编译失败,则代码存在编译异常问题,收集编译异常信息加入到扫描结果中。当编译成功后,对主项目进行代码质量扫描检测,收集扫描检测数据,形成扫描结果。
其中,对于形成的扫描结果,将其保存在扫描结果数据库中,供开发、测试等人员参考。
本发明实施例提供的代码质量扫描方法,根据组件的三个维度,将扫描分成了三种模式:单组件模式、组件基于依赖模式、组件基于整体项目模式,在进行代码扫描时维护人员可以指定组件、指定周期、指定模式、指定批次,进行扫描。同时,在不同维度代码扫描时,制定定时周期扫描,可以得出基于时间轴的数据趋势,通过不同角度查看代码的质量状态。
本发明实施例还提供一种代码质量扫描装置,如图3所示,该装置包括:
要求获取模块,用于获取扫描要求;详细内容参见上述方法实施例中步骤S101的相关描述。
扫描模式确定模块,用于根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;详细内容参见上述方法实施例中步骤S102的相关描述。
扫描模块,用于根据所述扫描模式进行对待扫描组件进行扫描。详细内容参见上述方法实施例中步骤S103的相关描述。
本发明实施例提供的代码质量扫描装置,通过获取扫描要求,根据扫描要求中的扫描模式实现了单组件扫描、组件依赖扫描或者整体项目扫描;由此,当仅需要对单个组件扫描时,采用单组件扫描模式,保证了扫描效率;同时组件依赖扫描时,将单组件和其依赖的组件一起扫描,保证依赖相关漏洞和依赖重复问题的完善;而整体项目扫描保证目标项目中相关漏洞和整体重复问题的完善。因此,该代码质量扫描装置能够从根本上解决多项目、多组件的复杂设计的组件化架构中,组件代码质量扫描复杂、不完整、冗余扫描等问题。
本发明实施例提供的代码质量扫描装置的功能描述详细参见上述实施例中代码质量扫描方法描述。
本发明实施例还提供一种存储介质,如图4所示,其上存储有计算机程序601,该指令被处理器执行时实现上述实施例中代码质量扫描方法的步骤。该存储介质上还存储有音视频流数据,特征帧数据、交互请求信令、加密数据以及预设数据大小等。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccess Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random AccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
本发明实施例还提供了一种电子设备,如图5所示,该电子设备可以包括处理器51和存储器52,其中处理器51和存储器52可以通过总线或者其他方式连接,图5中以通过总线连接为例。
处理器51可以为中央处理器(Central Processing Unit,CPU)。处理器51还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器52作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的对应的程序指令/模块。处理器51通过运行存储在存储器52中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的代码质量扫描方法。
存储器52可以包括存储程序区和存储数据区,其中,存储程序区可存储操作装置、至少一个功能所需要的应用程序;存储数据区可存储处理器51所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器52可选包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至处理器51。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器52中,当被所述处理器51执行时,执行如图1-2所示实施例中的代码质量扫描方法。
上述电子设备具体细节可以对应参阅图1至图2所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。

Claims (10)

1.一种代码质量扫描方法,其特征在于,包括:
获取扫描要求;
根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;
根据所述扫描模式进行对待扫描组件进行扫描。
2.根据权利要求1所述的代码质量扫描方法,其特征在于,所述扫描要求包括:主动扫描要求和定时扫描要求;
获取扫描要求之前,包括:
根据待扫描组件生成组件列表,所述组件列表中包括组件名、编译信息、源码路径以及各组件的依赖关系。
3.根据权利要求2所述的代码质量扫描方法,其特征在于,根据所述扫描模式进行对待扫描组件进行扫描,包括:
根据所述扫描模式将待扫描组件进行编译;
当编译失败时,获取编译异常信息;
当编译成功时,根据所述扫描模式对待扫描组件进行扫描。
4.根据权利要求3所述的代码质量扫描方法,其特征在于,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:
当所述扫描模式为单组件扫描模式时,对待扫描组件进行扫描检测;
收集单组件扫描的扫描结果。
5.根据权利要求3所述的代码质量扫描方法,其特征在于,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:
当所述扫描模式为组件依赖扫描模式时,根据待扫描组件及组件列表获取待扫描组件的依赖组件;
根据待扫描组件及其依赖组件形成依赖列表;
对所述依赖列表进行循环扫描检测;
收集组件依赖扫描的扫描结果。
6.根据权利要求3所述的代码质量扫描方法,其特征在于,当编译成功时,根据所述扫描模式对待扫描组件进行扫描,包括:
根据待扫描组件以及整体项目扫描模式确定扫描的主项目;
根据所述主项目中所有的组件进行合并;
根据合并后的组件进行扫描检测;
收集整体项目扫描的扫描结果。
7.根据权利要求1所述的代码质量扫描方法,其特征在于,根据所述扫描模式进行对待扫描组件进行扫描,包括:
当所述扫描模式为单组件扫描模式时,对待扫描组件进行运行漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、单组件代码重复扫描;
当所述扫描模式为组件依赖扫描模式时,对待扫描组件进行运行漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、依赖组件代码重复扫描;
当所述扫描模式为组件依赖扫描模式时,对待扫描组件进行运行漏洞扫描、代码书写漏洞扫描、代码书写不规范扫描、整体项目代码重复扫描。
8.一种代码质量扫描装置,其特征在于,包括:
要求获取模块,用于获取扫描要求;
扫描模式确定模块,用于根据所述扫描要求确定代码扫描的扫描模式,所述扫描模式包括单组件扫描模式、组件依赖扫描模式以及整体项目扫描模式;
扫描模块,用于根据所述扫描模式进行对待扫描组件进行扫描。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行如权利要求1-7任一项所述的代码质量扫描方法。
10.一种电子设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如权利要求1-7任一项所述的代码质量扫描方法。
CN202111207391.0A 2021-10-15 2021-10-15 一种代码质量扫描方法、装置、存储介质及电子设备 Pending CN113934448A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111207391.0A CN113934448A (zh) 2021-10-15 2021-10-15 一种代码质量扫描方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111207391.0A CN113934448A (zh) 2021-10-15 2021-10-15 一种代码质量扫描方法、装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN113934448A true CN113934448A (zh) 2022-01-14

Family

ID=79280029

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111207391.0A Pending CN113934448A (zh) 2021-10-15 2021-10-15 一种代码质量扫描方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN113934448A (zh)

Similar Documents

Publication Publication Date Title
CN108459962B (zh) 代码规范性检测方法、装置、终端设备及存储介质
CN110704297B (zh) 代码评审方法、装置、计算机设备及存储介质
CN111382070B (zh) 兼容性测试方法、装置、存储介质和计算机设备
CN111459495B (zh) 单元测试代码文件生成方法、电子装置及存储介质
GB2493828A (en) Linking a test case error to a code segment to re-execute the test when the code segment is modified
CN113138757B (zh) 前端代码自动生成方法、装置、服务器、系统及介质
CN115422063A (zh) 一种低代码接口自动化系统、电子设备及存储介质
CN110908915A (zh) 一种测试覆盖率的展示方法、装置及计算机系统
CN111008017B (zh) 一种基于oclint的待提交文件预审方法及相关组件
CN111597069A (zh) 程序处理方法、装置、电子设备和存储介质
CN112988578A (zh) 一种自动化测试方法和装置
CN113934448A (zh) 一种代码质量扫描方法、装置、存储介质及电子设备
CN114385155A (zh) vue项目可视化工具生成方法、装置、设备及存储介质
CN115033489A (zh) 代码资源检测方法、装置、电子设备及存储介质
CN114896164A (zh) 接口优化方法、装置、电子设备及存储介质
CN114968751A (zh) 一种无代码开发平台的程序调试方法和程序调试装置
CN113806231A (zh) 一种代码覆盖率分析方法、装置、设备和介质
CN113467815A (zh) 热更新的应用修复方法、装置、终端设备及存储介质
CN113377648A (zh) 软件系统诊断方法、装置、电子设备及计算机可读介质
CN112579475A (zh) 代码测试方法、装置、设备及可读存储介质
CN112632174A (zh) 一种数据检验的方法、装置和系统
CN112148581A (zh) 代码规范检查方法、装置、系统及存储介质
CN112527265A (zh) 一种日志自动注入的方法和计算机设备
CN116452208B (zh) 变更交易码的确定方法、装置、设备及介质
CN112947948B (zh) 应用服务的部署方法及装置

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