CN113238889B - 一种漏洞的问题定位方法及装置、存储介质、终端 - Google Patents

一种漏洞的问题定位方法及装置、存储介质、终端 Download PDF

Info

Publication number
CN113238889B
CN113238889B CN202110668805.3A CN202110668805A CN113238889B CN 113238889 B CN113238889 B CN 113238889B CN 202110668805 A CN202110668805 A CN 202110668805A CN 113238889 B CN113238889 B CN 113238889B
Authority
CN
China
Prior art keywords
error
keywords
log information
result
tested
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.)
Active
Application number
CN202110668805.3A
Other languages
English (en)
Other versions
CN113238889A (zh
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.)
Spreadtrum Communications Shanghai Co Ltd
Original Assignee
Spreadtrum Communications Shanghai 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 Spreadtrum Communications Shanghai Co Ltd filed Critical Spreadtrum Communications Shanghai Co Ltd
Priority to CN202110668805.3A priority Critical patent/CN113238889B/zh
Publication of CN113238889A publication Critical patent/CN113238889A/zh
Application granted granted Critical
Publication of CN113238889B publication Critical patent/CN113238889B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种漏洞的问题定位方法及装置、存储介质、终端、所述漏洞的问题定位方法,包括:获取待测试产品在测试时得到的第一日志信息;采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,其中,所述错误关键字集合包括若干个错误关键字,所述错误关键字包括否定语义词和/或缓存错误关键词;根据所述解析结果,对漏洞的问题进行定位。上述方案,能够提高BUG发现率,及准确定位BUG的原因值。

Description

一种漏洞的问题定位方法及装置、存储介质、终端
技术领域
本发明实施例涉及设备测试技术领域,尤其涉及一种漏洞的问题定位方法及装置、存储介质、终端。
背景技术
手机、物联网(Internet of things,IOT)设备、车载设备的厂商通常是针对不同硬件、不同操作系统提供解决方案,这其中大部分是驱动开发好以后,适配不同的中间件层、应用层,而客户有时并不会使用厂商提供参考的应用,而是采用自己的应用。如何能够更好的跨平台、跨操作系统定位驱动本身的问题,通常需要对手机、IOT设备、车载设备等设备进行自动化测试和手动测试。
然而,对手机、IOT设备、车载设备等设备进行自动化测试和手动测试时,漏洞(BUG)的发现率较低,且不易定位BUG的原因。
发明内容
本发明实施例解决的技术问题是如何提高BUG发现率,及准确定位BUG的原因值。
为解决上述技术问题,本发明实施例提供一种漏洞的问题定位方法,包括:获取待测试产品在测试时得到的第一日志信息;采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,其中,所述错误关键字集合包括若干个错误关键字,所述错误关键字包括否定语义词和/或缓存错误关键词;根据所述解析结果,对漏洞的问题进行定位。
可选的,所述采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,包括:获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确且具有与所述待测试产品相同业务模块代码的产品;采用所述错误关键字集合对所述参照日志信息进行解析,得到参照结果;采用所述错误关键字集合对所述第一日志信息进行解析,得到中间结果;从所述中间结果中去掉所述参照结果,得到所述解析结果。
可选的,所述采用所述错误关键字集合对所述第一日志信息进行解析,包括:采用所述错误关键字集合中的各个错误关键字从所述第一日志信息中查找出包含各个错误关键字的语句,所述第一日志信息包含多个语句。
可选的,所述错误关键字集合包括多个子集,所述子集与待测试产品的业务模块相对应,所述采用所述错误关键字集合对所述第一日志信息进行解析,包括:根据所述待测试产品的业务模块,从所述错误关键字集合中获取与所述待测试产品的业务模块相对应的子集;采用与所述待测试产品的业务模块相对应的子集对所述第一日志信息进行解析。
可选的,所述错误关键字集合从所述待测试产品的源代码的错误关键字打印语句中提取得到。
可选的,采用如下方式得到所述错误关键字集合:从所述待测试产品的源代码的错误关键字打印语句中提取否定语义词和/或缓存错误关键词,将提取的否定语义词和/或缓存错误关键词作为错误关键字,并得到由错误关键字组成的初始集合;根据所述初始集合得到所述错误关键字集合。
可选的,所述根据所述初始集合得到所述错误关键字集合,包括:获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确且具有与所述待测试产品相同业务模块代码的产品;采用所述初始集合对所述参照日志信息进行解析,得到第一结果;将所述第一结果与所述参照样本对应的源代码中的错误关键字打印语句进行相似比对,根据比对结果得到第二结果,所述第二结果包括一个或多个非漏洞的错误关键字;从所述初始集合中去除所述第二结果中包含的一个或多个非漏洞的错误关键字,得到所述错误关键字集合。
可选的,所述根据比对结果得到第二结果,包括:将所述第一结果与所述参照样本对应的源代码中的错误关键字打印语句中相同的部分作为所述第二结果。
可选的,所述采用所述初始集合对所述参照日志信息进行解析,得到第一结果,包括:采用所述初始集合中的错误关键字从所述参照日志信息查找出包含所述错误关键字的语句,根据包含错误关键字的语句得到所述第一结果,所述参照日志信息包含多个语句。
可选的,采用所述初始集合中的错误关键字从所述参照日志信息查找出包含所述错误关键字的语句,根据包含错误关键字的语句得到所述第一结果,所述参照日志信息包含多个语句。
本发明实施例还提供一种漏洞的问题定位装置,包括:获取单元,用于获取待测试产品在测试时得到的第一日志信息;解析单元,用于采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,其中,所述错误关键字集合包括若干个错误关键字,所述错误关键字包括否定语义词和/或缓存错误关键词;定位单元,用于根据所述解析结果,对漏洞的问题进行定位。
本发明实施例还提供一种存储介质,所述存储介质为非易失性存储介质或非瞬态存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述任一种漏洞的问题定位方法的步骤。
本发明实施例还提供一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述任一种漏洞的问题定位方法的步骤。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
对于待测试产品在测试得到的第一日志信息,采用预设的错误关键字集合对第一日志信息进行解析,得到解析结果,根据解析结果,对漏洞的问题进行定位,由于错误关键字集合包括若干个错误关键字,而错误关键字包括否定语义词和/或缓存错误关键词,通过配置否定语义词以及缓存错误关键词作为错误关键词进行第一日志信息的解析,一方面可以减小比对的数量,提高漏洞的问题定位效率,并可以主动通过错误关键字主动发现新的问题,提高BUG的发现率及准确定位BUG的原因值。此外,通过提高BUG的发现率及准确定位BUG的原因值,还可以缩短BUG的生命周期,快速定位到BUG的问题,从而可以缩短产品的开发周期。
附图说明
图1是本发明实施例中的一种漏洞的问题定位方法的流程图;
图2是本发明实施例中的一种错误关键字集合的确定方法的流程图;
图3是本发明实施例中的一种漏洞的问题定位装置的结构示意图。
具体实施方式
如上所述,手机、物联网(Internet Of Things,IOT)设备、车载设备的厂商通常是针对不同硬件、不同操作系统提供解决方案,如何能够更好的跨平台、跨操作系统定位驱动本身的问题,通常需要对手机、IOT设备、车载设备等设备进行自动化测试或者手动测试。
然而,对手机、IOT设备、车载设备等设备进行自动化测试或者手动测试时,目前,通常基于将抓取的日志信息与历史异常信息进行比对,以对BUG的问题进行定位,然而这种基于历史异常信息对BUG的问题进行定位的方式,仅能发现历史出现过的异常信息,对于历史未出现过的BUG不具备发现能力,从而导致BUG的发现率较低,且不易定位BUG的原因。
为解决上述问题,在本发明实施例中,对于待测试产品在测试得到的第一日志信息,采用预设的错误关键字集合对第一日志信息进行解析,得到解析结果,根据解析结果,对漏洞的问题进行定位,由于错误关键字集合包括若干个错误关键字,而错误关键字包括否定语义词和/或缓存错误关键词,通过配置否定语义词以及缓存错误关键词作为错误关键词进行第一日志信息的解析,一方面可以减小比对的数量,提高漏洞的问题定位效率,并可以主动通过错误关键字主动发现新的问题,提高BUG的发现率及准确定位BUG的原因值。此外,通过提高BUG的发现率及准确定位BUG的原因值,还可以减少BUG的生命周期,快速定位到BUG的问题,快速流转到对应研发人员,从而可以缩短产品的开发周期。
为使本发明实施例的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
本发明实施例提供一种漏洞的问题定位方法,漏洞的问题定位方法的执行主体可以为终端本身,也可以为能够用于终端的控制芯片、处理芯片等芯片或者其他各种恰当的元器件等。
参照图1给出的本发明实施例中的一种漏洞的问题定位方法的流程图,具体可以包括如下步骤:
步骤S11,获取待测试产品在测试时得到的第一日志信息。
在具体实施中,第一日志信息可以为待测试产品在测试时得到的所有类型的日志。进一步地,为了简化处理流程,提高问题定位效率,第一日志信息可以为错误日志(Error Log),其中,错误日志是软件用来记录待测试产品运行时出现错误信息的文本文件。
步骤S12,采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果。
在具体实施中,错误关键字集合可以包括若干个错误关键字,错误关键字指LOG中可以定位BUG的字符串。错误关键字可以包括否定语义词,也可以包括缓存(BUFFER)错误关键词,还可以同时包括否定语义词以及缓存错误关键词。
在一些实施例中,否定语义关键词可以包括can't、could not、fail、not、notavailable、time out、unable to以及Invalid等中的一种或多种,可以理解的是,根据代码写作习惯不同、实际应用场景的不同以及待测试产品的业务模块不同等,上述否定语义关键词也可以包括其他的词、其他语言对应的否定语义词等,根据实际需求将各种类型的否定语义词添加至所述错误关键字集合即可,此处不再一一举例。其中,业务模块主要涉及待测试产品的驱动层或者中间件层。业务模块可以为多媒体业务模块,也可以为WIFI业务模块,还可以为通信业务模块,还可以为其他类型的业务模块等。
在一些实施例中,缓存错误关键词可以为指在非正常缓存情况下,用于表征出现缓存错误的词,如“BUFFER为空”或者“BUFFER为满”等,可以理解的是,还可以包括其他用于指示缓存出现错误的词,此处不再一一举例。
在具体实施中,步骤S12可以采用如下方式实现:获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确且具有与所述待测试产品相同业务模块代码的产品;采用错误关键字集合对所述参照日志信息进行解析,得到参照结果。采用所述错误关键字集合对所述第一日志信息进行解析,得到中间结果;从所述中间结果中去掉所述参照结果,得到所述解析结果。
具体而言,以功能正确且具有与待测试样本相同业务模块的产品作为参照样本,且参照样本的业务模块代码与待测试产品的业务模块代码相同。其中,业务模块可以为多媒体业务模块,也可以为WIFI业务模块,还可以为通信业务模块或者其他业务模块等,具体根据实际需求进行选择即可。例如,参照样本的多媒体业务模块的代码与待测试样本的多媒体业务模块的代码相同。
可以采用每条测试用例对应的自动化脚本运行在参照样本上,得到参照样本在测试时得到的参照日志信息。具体而言,得到的参照日志信息为参照样本的业务模块在测试时的日志信息。采用错误关键字集合对参照日志信息进行解析,得到参照结果。由于参照样本为功能正确的产品,故,参照结果包括非BUG的错误关键字,而第一日志信息中既包括非BUG的错误关键字,还可能包括BUG的错误关键字,而从中间结果中去掉参照结果,可以从中间结果中排除非BUG的错误关键字,得到BUG的错误关键字,以实现对中间结果的初步筛选,为后续进行问题定位时减小工作量做准备。其中,BUG的错误关键字指与BUG相关的错误关键字,可以用于寻找BUG的问题。非BUG的错误关键字指与BUG不相关的其他类型故障的错误关键字,如设备硬件故障等。
进一步,采用错误关键字集合对参照日志信息进行解析,具体可以包括:采用错误关键字集合中的各个错误关键字从参照日志信息中查找出包含各个错误关键字的语句,得到参照结果,参照结果包括从参照日志信息中查找出的包含各个错误关键字的语句。参照日志信息包括多个语句,每个语句可以由一个或多个字符串组成。
进一步,采用错误关键字集合对第一日志信息进行解析,具体可以包括:采用错误关键字集合中的各个错误关键字从第一日志信息中查找出包含各个错误关键字的语句,得到中间结果,中间结果包括从第一日志信息中查找出的包含各个错误关键字的语句。第一日志信息包含多个语句。从而从中间结果中排除参照结果后,得到的解析结果可以包含BUG的错误关键词的语句。
在一些非限制性实施例中,错误关键字集合可以包括多个子集,子集与待测试产品的业务模块相对应。例如,业务模块为多媒体业务时,对应的子集A;业务模块为WIFI模块时,对应的子集为B。
在采用错误关键字对第一日志信息进行解析时,可以根据待测试产品的业务模块,从错误关键字集合中获取与待测试产品的业务模块相对应的子集,采用与待测试产品的业务模块相对应的子集对第一日志信息进行解析。
当错误关键字集合用于对多种不同类型的业务模块进行测试时,依据业务模块的类型对错误关键字集合中的错误关键字进行分类,以使得在进行漏洞的问题定位时可以缩小查找范围,提高BUG查找效率。对于一些业务模块虽然类型不同,但是对应的错误关键词相同时,则可以共用子集。也即一个子集可以对应一种类型的业务模块,也可以对应多种不同的类型的业务模块。
进一步地,当采用所述错误关键字集合对所述参照日志信息进行解析,得到参照结果时,也可以获取与参照样本的业务模块对应的子集,采用获取到的子集对参照日志信息进行解析,得到参照结果。
步骤S13,根据解析结果,对漏洞的问题进行定位。
在具体实施中,解析结果包括从第一日志信息中解析出的包含错误关键字的语句。从而当得到解析结果之后,可以根据从第一日志信息中解析出的包含错误关键字的语句对漏洞的问题进行定位。
进一步,解析结果还可以包括可能是漏洞的问题的位置信息。可以通过漏洞的问题的位置信息对漏洞的问题进行定位。例如,解析结果包括从第一日志信息中解析出的包含错误关键字的语句的位置信息,位置信息可以为在第一日志信息中的行数等,以有助于快速的定位到漏洞的问题,并得到漏洞的问题前后相关的日志,有利于相关人员根据漏洞的问题前后相关的日志能够及时掌握提高漏洞的问题定位效率。
在一些实施例中,也可以根据解析结果,对漏洞的问题进行提醒,通过对漏洞的问题进行提醒,以实现对漏洞的问题进行定位。其中,可以通过对从第一日志信息中解析出的包含错误关键字的语句进行高亮显示,以使得包含错误关键字的语句与其他不包含错误关键字的语句的颜色或者底色不同,从而有助于快速的发现定位到漏洞的问题,并得到漏洞的问题前后相关的日志,有利于相关人员能够及时掌握提高漏洞的问题定位效率。
可以理解的是,解析结果还可以在包含漏洞的问题的位置信息的同时,对漏洞的问题进行定位。
由上可知,对于待测试产品在测试得到的第一日志信息,采用预设的错误关键字集合对第一日志信息进行解析,得到解析结果。根据解析结果,对漏洞的问题进行定位,由于错误关键字集合包括若干个错误关键字,而错误关键字包括否定语义词和/或缓存错误关键词,通过配置否定语义词以及缓存错误关键词作为错误关键词进行第一日志信息的解析,一方面可以减小比对的数量,并可以主动通过错误关键字主动发现新的问题,最大可能的增大BUG发现范围,提高BUG的发现率及准确定位BUG的原因值。此外,通过提高BUG的发现率及准确定位BUG的原因值,还可以缩短BUG的生命周期,快速定位到BUG的问题,从而可以缩短产品的开发周期。
通过结合BUG的问题以及待测试产品的源代码进行研究发现,源代码中的错误关键字打印语句通常采用英文编写,经研究发现BUG的问题通常与源代码中的错误关键字打印语句中的否定语义词相关,因此,本发明实施例中,可以将与BUG的问题相关的且出现在错误关键字打印语句中的否定语义词作为共性关键字。此外,经研究还发现,代码定义习惯中通常采用的表征BUFFER错误的关键词也是一致的,可以用于表征BUFFER错误的关键词也作为共性关键字。
基于上述研究,在本发明一些非限制性实施例中,参照图2,给出了本发明实施例中的一种错误关键字集合的确定方法的流程图,可以采用通过如下步骤得到错误关键字集合。
步骤S21,可以从待测试产品的源代码的错误关键字打印语句中提取否定语义词和/或BUFFER错误的关键词,将提取的否定语义词和/或缓存错误关键词作为错误关键字,并得到由错误关键字组成的初始集合。
步骤S22,根据所述初始集合得到所述错误关键字集合。
在一些实施例中,可以将初始集合作为错误关键字集合。
进一步地,也可以对初始集合进行处理后得到错误关键字集合。具体而言,步骤S22可以通过如下方式实现:获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确的产品且具有与所述待测试产品相同业务模块代码;采用所述初始集合对所述参照日志信息进行解析,得到第一结果;将所述第一结果与所述参照样本对应的源代码中的错误关键字打印语句进行相似比对,根据比对结果得到第二结果,所述第二结果包括一个或多个非漏洞的错误关键字;从所述初始集合中去除所述第二结果,得到所述错误关键字集合。由于参照样本指功能正确且具有与所述待测试产品的相同业务模块代码的产品,从而第二结果中包含一个或多个非BUG的错误关键字,而从初始集合中去除第二结果中包含的一个或多个非漏洞的错误关键字,可以得到所述错误关键字集合,所得到的错误关键字集合即为指示漏洞的问题的错误关键字的集合。
在具体实施中,在得到第一结果之后,可以将第一结果与参照样本对应的源代码中的错误关键字打印语句中相同的部分作为第二结果。由于第一结果中可能存在虽然包含错误关键字的字符串或者语句,但是与BUG无关,可能是源代码中的错误关键字打印语句中的一些预定义的内容,通过将第一结果与参照样本的源代码的错误关键字打印语句进行比对,并将第一结果与参照样本对应的源代码中的错误关键字打印语句中相同的部分作为第二结果,可以筛选出包含错误关键字但是与BUG无关的字符串或者语句
在具体实施中,采用初始集合中的错误关键字从参照日志信息中查找出包含错误关键字的语句,根据包含错误关键字的语句得到第一结果,也即第一结果为从参照日志信息中查找出包含错误关键字的语句。参照日志信息包含多个语句,每个语句可以由一个或多个字符串组成。
进一步地,为了进一步完善初始集合中的错误关键字的覆盖范围,可以判断参照样本对应的源代码是否进行错误关键字的提取,若未进行错误关键字的提取,则从所述参照样本对应的源代码的错误关键字打印语句中提取否定语义词和/或缓存错误关键词,并将提取到的否定语义词和/或缓存错误关键词加入至所述初始集合。由此可以实现对初始集合中的错误关键字的完善及扩展。
在具体实施中,本发明上述实施例提供的漏洞的问题定位方法可以用于Linux操作系统,如安卓(Android),Yocto等。相应地,上述实施例中的第一日志信息、参照日志信息等也均为Linux日志。可以理解的是,对于能够获取到日志以及源代码的其他类型的操作系统,上述实施例提供的漏洞的问题定位方法同样适用。上述漏洞的问题定位方法可以适用多种语言编写,如shell语言、Python语言、Java语言以及C++语言等,对此不做限定。
本发明实施例还提供一种漏洞的问题定位装置,参照图3,给出了本发明实施例中的一种漏洞的问题定位装置的结构示意图,所述漏洞的问题定位装置30可以包括:
获取单元31,用于获取待测试产品在测试时得到的第一日志信息;
解析单元32,用于采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,其中,所述错误关键字集合包括若干个错误关键字,所述错误关键字包括否定语义词和/或缓存错误关键词;
定位单元33,用于根据所述解析结果,对漏洞的问题进行定位。
在具体实施中,漏洞的问题定位装置30可以对应于终端中具有漏洞的问题定位的芯片;或者对应于具有数据处理功能的芯片;或者对应于终端包括具有漏洞的问题定位功能的芯片的芯片模组;或者对应于具有数据处理功能芯片的芯片模组,或者对应于终端。
在具体实施中,关于上述实施例中描述的各个装置、产品包含的各个模块/单元,其可以是软件模块/单元,也可以是硬件模块/单元,或者也可以部分是软件模块/单元,部分是硬件模块/单元。
例如,对于应用于或集成于芯片的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于芯片模组的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于芯片模组的同一组件(例如芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片模组内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于终端的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于终端内同一组件(例如,芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于终端内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现。
在具体实施中,漏洞的问题定位装置30的具体工作原理及工作流程,可以参考本发明上述任一实施例中提供的漏洞的问题定位方法中的描述,此处不再赘述。
本发明实施例还提供一种存储介质,所述存储介质为非易失性存储介质或非瞬态存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述任一实施例提供的漏洞的问题定位方法中的步骤。
本发明实施例还提供一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述任一实施例提供的漏洞的问题定位方法中的步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于任一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (9)

1.一种漏洞的问题定位方法,其特征在于,包括:
获取待测试产品在测试时得到的第一日志信息;
采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,其中,所述错误关键字集合包括若干个错误关键字,所述错误关键字为否定语义词和/或缓存错误关键词;
根据所述解析结果,对漏洞的问题进行定位;
其中,所述错误关键字集合从所述待测试产品的源代码的错误关键字打印语句中提取得到;
采用如下方式得到所述错误关键字集合:
从所述待测试产品的源代码的错误关键字打印语句中提取否定语义词和/或缓存错误关键词,将提取的否定语义词和/或缓存错误关键词作为错误关键字,并得到由错误关键字组成的初始集合;
根据所述初始集合得到所述错误关键字集合;
所述根据所述初始集合得到所述错误关键字集合,包括:
获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确且具有与所述待测试产品相同业务模块代码的产品;
采用所述初始集合对所述参照日志信息进行解析,得到第一结果;
将所述第一结果与所述参照样本对应的源代码中的错误关键字打印语句进行相似比对,根据比对结果得到第二结果,所述第二结果包括一个或多个非漏洞的错误关键字;
从所述初始集合中去除所述第二结果中包含的一个或多个非漏洞的错误关键字,得到所述错误关键字集合;
所述采用所述初始集合对所述参照日志信息进行解析,得到第一结果,包括:采用所述初始集合中的错误关键字从所述参照日志信息查找出包含所述错误关键字的语句,根据包含错误关键字的语句得到所述第一结果,所述参照日志信息包含多个语句。
2.如权利要求1所述的漏洞的问题定位方法,其特征在于,所述采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,包括:
获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确且具有与所述待测试产品相同业务模块代码的产品;
采用所述错误关键字集合对所述参照日志信息进行解析,得到参照结果;
采用所述错误关键字集合对所述第一日志信息进行解析,得到中间结果;
从所述中间结果中去掉所述参照结果,得到所述解析结果。
3.如权利要求2所述的漏洞的问题定位方法,其特征在于,所述采用所述错误关键字集合对所述第一日志信息进行解析,包括:
采用所述错误关键字集合中的各个错误关键字从所述第一日志信息中查找出包含各个错误关键字的语句,所述第一日志信息包含多个语句。
4.如权利要求2所述的漏洞的问题定位方法,其特征在于,所述错误关键字集合包括多个子集,所述子集与待测试产品的业务模块相对应,所述采用所述错误关键字集合对所述第一日志信息进行解析,包括:
根据所述待测试产品的业务模块,从所述错误关键字集合中获取与所述待测试产品的业务模块相对应的子集;
采用与所述待测试产品的业务模块相对应的子集对所述第一日志信息进行解析。
5.如权利要求1所述的漏洞的问题定位方法,其特征在于,所述根据比对结果得到第二结果,包括:
将所述第一结果与所述参照样本对应的源代码中的错误关键字打印语句中相同的部分作为所述第二结果。
6.如权利要求1所述的漏洞的问题定位方法,其特征在于,判断所述参照样本对应的源代码是否进行错误关键字的提取,若未进行错误关键字的提取,则从所述参照样本对应的源代码的错误关键字打印语句中提取否定语义词和/或缓存错误关键词,并将提取到的否定语义词和/或缓存错误关键词加入至所述初始集合。
7.一种漏洞的问题定位装置,其特征在于,包括:
获取单元,用于获取待测试产品在测试时得到的第一日志信息;
解析单元,用于采用预设的错误关键字集合对所述第一日志信息进行解析,得到解析结果,其中,所述错误关键字集合包括若干个错误关键字,所述错误关键字为否定语义词和/或缓存错误关键词;
定位单元,用于根据所述解析结果,对漏洞的问题进行定位;
其中,所述错误关键字集合从所述待测试产品的源代码的错误关键字打印语句中提取得到;
采用如下方式得到所述错误关键字集合的单元:从所述待测试产品的源代码的错误关键字打印语句中提取否定语义词和/或缓存错误关键词,将提取的否定语义词和/或缓存错误关键词作为错误关键字,并得到由错误关键字组成的初始集合;根据所述初始集合得到所述错误关键字集合;所述根据所述初始集合得到所述错误关键字集合,包括:获取参照样本在测试时得到的参照日志信息,所述参照样本指功能正确且具有与所述待测试产品相同业务模块代码的产品;采用所述初始集合对所述参照日志信息进行解析,得到第一结果;将所述第一结果与所述参照样本对应的源代码中的错误关键字打印语句进行相似比对,根据比对结果得到第二结果,所述第二结果包括一个或多个非漏洞的错误关键字;从所述初始集合中去除所述第二结果中包含的一个或多个非漏洞的错误关键字,得到所述错误关键字集合;所述采用所述初始集合对所述参照日志信息进行解析,得到第一结果,包括:采用所述初始集合中的错误关键字从所述参照日志信息查找出包含所述错误关键字的语句,根据包含错误关键字的语句得到所述第一结果,所述参照日志信息包含多个语句。
8.一种存储介质,所述存储介质为非易失性存储介质或非瞬态存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行权利要求1至6任一项所述的漏洞的问题定位方法的步骤。
9.一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序时执行权利要求1至6中任一项所述的漏洞的问题定位方法的步骤。
CN202110668805.3A 2021-06-16 2021-06-16 一种漏洞的问题定位方法及装置、存储介质、终端 Active CN113238889B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110668805.3A CN113238889B (zh) 2021-06-16 2021-06-16 一种漏洞的问题定位方法及装置、存储介质、终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110668805.3A CN113238889B (zh) 2021-06-16 2021-06-16 一种漏洞的问题定位方法及装置、存储介质、终端

Publications (2)

Publication Number Publication Date
CN113238889A CN113238889A (zh) 2021-08-10
CN113238889B true CN113238889B (zh) 2023-04-28

Family

ID=77140143

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110668805.3A Active CN113238889B (zh) 2021-06-16 2021-06-16 一种漏洞的问题定位方法及装置、存储介质、终端

Country Status (1)

Country Link
CN (1) CN113238889B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866258A (zh) * 2019-10-12 2020-03-06 平安科技(深圳)有限公司 快速定位漏洞方法、电子装置及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365780B (zh) * 2013-07-22 2016-08-03 百度在线网络技术(北京)有限公司 异常测试覆盖率计算方法及装置
US10049102B2 (en) * 2014-06-26 2018-08-14 Hcl Technologies Limited Method and system for providing semantics based technical support
CN109388623A (zh) * 2018-11-02 2019-02-26 郑州云海信息技术有限公司 一种设备故障检测的方法、系统及相关组件

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110866258A (zh) * 2019-10-12 2020-03-06 平安科技(深圳)有限公司 快速定位漏洞方法、电子装置及存储介质

Also Published As

Publication number Publication date
CN113238889A (zh) 2021-08-10

Similar Documents

Publication Publication Date Title
CN110018955B (zh) 通过转换手动测试用例来生成自动化测试脚本
CN109710508B (zh) 测试方法、测试装置、测试设备及计算机可读存储介质
US20170132119A1 (en) Method and device for retrieving test case based on code coverage
US11422917B2 (en) Deriving software application dependency trees for white-box testing
CN111367595B (zh) 数据处理方法、程序运行方法、装置及处理设备
CN110866258B (zh) 快速定位漏洞方法、电子装置及存储介质
CN111813680B (zh) 测试脚本的生成方法、装置、计算机设备和存储介质
CN111124870A (zh) 一种接口测试方法及装置
KR101979329B1 (ko) 바이너리의 취약점을 유발하는 입력데이터 위치 추적 방법 및 그 장치
CN110716866A (zh) 代码质量扫描方法、装置、计算机设备及存储介质
US20160314061A1 (en) Software Defect Detection Identifying Location of Diverging Paths
CN113138757A (zh) 前端代码自动生成方法、装置、服务器、系统及介质
CN109446077A (zh) 一种数据库测试方法及装置
CN113238889B (zh) 一种漏洞的问题定位方法及装置、存储介质、终端
CN111767213B (zh) 数据库检查点的测试方法、装置、电子设备及存储介质
CN113656304A (zh) 一种前端应用程序的测试方法、设备和存储介质
CN107766228B (zh) 一种基于多语种的自动化测试方法和装置
KR20190020363A (ko) 동적 분석과 정적 분석을 연계한 프로그램을 분석하기 위한 방법 및 장치
CN105138364B (zh) 一种终端系统升级的方法及装置
CN116795486A (zh) 一种容器镜像文件提纯的分析方法、装置、存储介质及终端
CN111240790A (zh) 一种应用的多语言适配方法、装置、客户端和存储介质
US7318221B2 (en) Windows™ F-language interpreter
CN110096281B (zh) 代码解析方法、解析服务器、存储介质及装置
CN114330278A (zh) 一种判断返回数据一致性的方法及设备
CN110442370B (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
GR01 Patent grant
GR01 Patent grant