CN116136825B - 数据检测方法及系统 - Google Patents

数据检测方法及系统 Download PDF

Info

Publication number
CN116136825B
CN116136825B CN202310401246.9A CN202310401246A CN116136825B CN 116136825 B CN116136825 B CN 116136825B CN 202310401246 A CN202310401246 A CN 202310401246A CN 116136825 B CN116136825 B CN 116136825B
Authority
CN
China
Prior art keywords
tag
field
command
software
command field
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
CN202310401246.9A
Other languages
English (en)
Other versions
CN116136825A (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.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Cloud Computing 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 Alibaba Cloud Computing Ltd filed Critical Alibaba Cloud Computing Ltd
Priority to CN202310401246.9A priority Critical patent/CN116136825B/zh
Publication of CN116136825A publication Critical patent/CN116136825A/zh
Application granted granted Critical
Publication of CN116136825B publication Critical patent/CN116136825B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation

Abstract

本说明书实施例提供数据检测方法及系统,其中所述数据检测方法包括:确定目标软件对应的待检测文件;确定待检测文件在第一运行环境中的第一软件描述字段,以及待检测文件在第二运行环境中的第二软件描述字段;按照筛选规则在第一软件描述字段中筛选第一命令字段,以及在第二软件描述字段中筛选第二命令字段;比较第一命令字段与第二命令字段,根据比较结果确定目标软件在第二运行环境中的兼容信息。通过比较第一命令字段和第二命令字段,从而实现对目标软件在第二运行环境下的兼容检测,在不运行目标软件的每个命令的情况下,获取到待检测文件对应的命令字段,通过在命令字段的维度对目标软件进行兼容性分析,提高了软件兼容性检测效果以及效率。

Description

数据检测方法及系统
技术领域
本说明书实施例涉及计算机信息技术领域,特别涉及一种数据检测方法。
背景技术
随着科技的进步,目前信息产业不断发展。人们日常生活中常常会使用计算机装置或者云端主机,且计算机装置或云端主机会具有操作系统,以供使用者进行通过操作系统操作。然而,在使用者安装新的软件至操作系统,或者将旧系统中的项目迁移至新系统时,需要确保各个软件的功能正常,但是由于操作系统的不兼容性,导致部分软件或操作系统本身产生错误。因此,如何对软件包进行兼容性测试,确保软件包与操作系统不会出现兼容性故障是目前亟需解决的问题。
发明内容
有鉴于此,本说明书实施例提供了一种数据检测方法。本说明书一个或者多个实施例同时涉及一种数据检测系统、数据检测装置,一种计算设备,一种计算机可读存储介质以及一种计算机程序,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种数据检测方法,包括:
确定目标软件对应的待检测文件;
确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段;
按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段;
比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。
根据本说明书实施例的第二方面,提供了一种数据检测装置,包括:
第一确定模块,被配置为确定目标软件对应的待检测文件;
第二确定模块,被配置为确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段;
筛选模块,被配置为按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段;
比较模块,被配置为比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。
根据本说明书实施例的第三方面,提供了一种数据检测系统,所述系统包括提供第一运行环境的终端和提供第二运行环境的终端;所述提供第一运行环境的终端或所述提供第二运行环境的终端,用于存储软件兼容检测可执行指令;所述软件兼容检测可执行指令被所述终端执行时实现上述数据检测方法的步骤。
根据本说明书实施例的第四方面,提供了一种计算设备,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现上述数据检测方法的步骤。
根据本说明书实施例的第五方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现上述数据检测方法的步骤。
根据本说明书实施例的第六方面,提供了一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述数据检测方法的步骤。
本说明书一个实施例提供了一种数据检测方法,包括:确定目标软件对应的待检测文件;确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段;按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段;比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。
本说明书一个实施例实现了通过待检测文件在第一运行环境中的第一软件描述字段确定第一命令字段,在第二运行环境中的第二软件描述字段确定第二命令字段,比较第一命令字段和第二命令字段,从而实现对目标软件在第二运行环境下的兼容检测,在不分别运行目标软件的每个命令的情况下,获取到待检测文件对应的命令字段,并通过在命令字段的维度对目标软件进行兼容性分析,提高了软件兼容性检测效果以及效率。
附图说明
图1是本说明书一个实施例提供的一种数据检测方法的结构示意图;
图2A是本说明书一个实施例提供的一种数据检测方法的流程图;
图2B是本说明书一实施例提供的一种数据检测方法中软件描述字段的示意图;
图3是本说明书一个实施例提供的一种数据检测方法的处理过程流程图;
图4是本说明书一个实施例提供的一种数据检测装置的结构示意图;
图5是本说明书一个实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
此外,需要说明的是,本说明书一个或多个实施例所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
手册页:man page,是linux/unix环境下命令与函数的帮助文档。
目前随着操作系统国产化的需求日益迫切,以及现有的操作系统各个版本的停止维护,将会有越来越多的用户选择将项目迁移到国产操作系统。因此,需要做好操作系统的兼容性测试,确定迁移后各项软件的工作正常,为客户项目的云上迁移提供保障,此外操作系统兼容性测试在软件包开发过程和操作系统版本测试等项目场景中也有重要的应用价值。但是现有兼容性检测工具无法检测出由于软件包的命令选项的变动引发的兼容性问题。
基于此在本说明书中,提供了一种数据检测方法,用于增加操作系统兼容性的测试覆盖,对软件的命令选项进行兼容性测试,本说明书同时涉及一种数据检测系统、数据检测装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
参见图1,图1是根据本说明书一个实施例提供的一种数据检测方法的结构示意图,其中,目标软件即为需要进行兼容性检测的软件,检测目标软件从第一系统的第一运行环境迁移到第二系统的第二运行环境是否会出现兼容性问题。待检测文件可以理解为目标软件配套的手册页文件,包含指令帮助、配置文件帮助和编程帮助等信息,即man page文件,通过分别获取待检测文件在第一运行环境中的第一软件描述字段和在第二运行环境中的第二软件描述字段,确定对应的第一命令字段和第二命令字段,第一命令字段即为第一运行环境下目标软件的待检测文件对应的命令选项的字段,第二命令字段即为第二运行环境下目标软件的待检测文件对应的命令选项的字段,通过比对第一命令字段和第二命令字段则可以发现命令字段在不同操作系统中的变更情况,从而进行兼容性分析确定兼容信息。
参见图2A,图2A示出了根据本说明书一个实施例提供的一种数据检测方法的流程图,具体包括以下步骤。
步骤202:确定目标软件对应的待检测文件。
其中,目标软件可以理解为需要进行兼容性检测的软件,检测该软件从第一操作系统迁移至第二操作系统之后是否会出现兼容性问题,待检测文件可以理解为目标软件对应的man page文件,即用户手册页。
在实际应用中,在Linux或Unix系统中使用man命令进行查询时显示的内容是手册页,包含指令帮助、配置文件帮助和编程帮助等信息。man命令显示的内容来自于磁盘上的man page文件,可以通过命令“rpm-qd 软件包名称”在存储磁盘中查找到,并可以使用man命令查询到。磁盘中存放的待检测文件为压缩文件,解压后使用roff格式排版的文本文件。
在本说明书一具体实施例中,为了检测目标软件在第二操作系统中是否可以正常使用,在目标软件迁移至第二操作系统之前,对其进行兼容性检测,确定目标软件对应的man page文件。
进一步的,由于待检测文件是roff格式排版的文本文件,而roff格式排版的文本文件为纯文本与格式化命令混合的文档,不利于后续进行比较处理,因此可以对man page文件进行格式化输出,具体的确定目标软件对应的待检测文件,包括:获取所述目标软件对应的初始待检测文件;对所述初始待检测文件进行格式转换处理,获得待检测文件。
其中,初始待检测文件即可以理解为目标应用配套的man page文件,对初始待检测文件进行格式转换处理之后,根据格式转换处理结构则可获得待检测文件,此时的待检测文件则为经过格式转换处理之后的文件。参见图2B,图2B是本说明书一实施例提供的一种数据检测方法中软件描述字段的示意图,其中,图2B中(a)是初始待检测文件即原始roff文件,“-t”、“-v”等字段即为后续所要获取的命令字段;在图2B中(b)是待检测文件即经过格式转换处理之后的xhtml格式文件,在该文件中包含各种类型的标签,如p段落标签、b加粗标签等,后续可以按照标签筛选规则从待检测文件的软件描述字段中筛选出命令字段,如“−t”、“−v”等。
在实际应用中,磁盘中存放的man page文件为压缩文件,解压后为使用roff格式排版的文本文件,该文本文件中包含大量的文本格式化指令,直接对其进行分析效率低下且噪声信息过多,因此可以使用groff排版系统对这种纯文本与格式化命令混合的文档进行格式转换处理,将其转换成结构化的xhtml格式文件,便于后期进行文档解析处理。
在本说明书一具体实施例中,获取目标软件对应的初始待检测文件,使用groff排版系统对初始待检测文件进行格式转换处理,输出xhtml格式的待检测文件,便于后续对待检测文件进行解析处理。
基于此,通过对初始待检测文件进行格式转换处理,从而获得便于解析的待检测文件,便于后续从待检测文件中提取命令选项的字段。
步骤204:确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段。
其中,第一运行环境可以理解为目标软件的源操作系统对应的运行环境,第二运行环境可以理解为目标软件的新操作系统对应的运行环境。第一软件描述字段可以理解为在第一运行环境中,目标软件的软件包中具体可用的命令选项区域的描述字段,第二软件描述字段可以理解为第二运行环境中,目标软件的软件包中具体可用的命令选项区域的描述字段。
在实际应用中,目标软件具有对应的软件包,而目标软件的软件包中包含了很多文本,例如功能性描述文件、配置项描述文件,待检测文件即为说明性描述文件,为了通过待检测文件评估目标软件的兼容性,因此需要提取目标软件中的待检测文件在不同运行环境下的软件描述区域,通过软件描述区域中的软件描述字段进行命令选项的比对,即软件描述字段中包含命令字段。
在本说明书一具体实施例中,确定待检测文件在源操作系统的第一运行环境中的第一软件描述字段,确定待检测文件在新操作系统的第二运行环境中的第二软件描述字段。
进一步的,为了避免提取出错误的软件描述字段,可以先确定待检测文件在各个操作系统中的软件文档,并从软件文档中提取出软件描述字段,具体的确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段,包括:确定所述待检测文件在第一运行环境中的第一软件文档,并从所述第一软件文档中提取第一软件描述字段;以及,确定所述待检测文件在第二运行环境中的第二软件文档,并从所述第二软件文档中提取第二软件描述字段。
其中,第一软件文档即为待检测文件在源操作系统中展示的软件文档,软件文档中包括许多命令选项,可以从软件文档中提取出需要进行解析的软件描述区域对应的字段,即软件描述字段。第二软件文档即为待检测文件在新操作系统中展示的软件文档。
在实际应用中,由于软件文档中可能存有许多无效信息,而后期进行兼容性检测时,只需要软件文档中的软件描述字段,因此在不同的运行环境中,需要分别确定出源操作系统中第一软件文档中的第一软件描述字段,以及新操作系统中第二软件文档中的第二软件描述字段。
在本说明书一具体实施例中,确定待检测文件在源操作系统的第一运行环境中的第一软件文档,并从第一软件文档中提取第一软件描述字段。确定待检测文件在第二运行环境中的第二软件文档,并从第二软件文档中提取第二软件描述字段。
基于此,通过从软件文档中提取软件描述字段,从而避免了因多余的无效信息对兼容性检测的判断造成的影响,提高后续的兼容性检测准确率。
进一步的,为了避免因初始待检测文件无法进行格式转换,而无法获得软件描述字段的情况发生,可以用过运行man命令的方式获得软件描述字段,具体的确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段,包括:通过在所述第一运行环境中运行所述待检测文件对应的待检测命令,确定所述待检测文件在第一运行环境中的第一软件描述字段;以及,通过在所述第二运行环境中运行所述待检测文件对应的待检测命令,确定所述待检测文件在第二运行环境中的第二软件描述字段。
其中,待检测命令可以理解为待检测文件中包含的命令,即man page文件中包含的man命令,通过运行待检测命令,可以确定出待检测文件对应的命令选项描述区域,即确定出对应的软件描述字段。
在实际应用中,在获得初始的man page文件之后,如果进行groff格式转换失败的情况下,则可以运行man命令,从而确定待检测文件在不同运行环境中的软件描述字段。
在本说明书一具体实施例中,通过在源操作系统的第一运行环境中运行待检测文件对应的待检测命令,确定待检测文件在第一运行环境中的第一软件描述字段,通过在新操作系统的第二运行环境中运行待检测文件对应的待检测命令,确定待检测文件在第二运行环境中的第二软件描述字段。
基于此,即使在出现无法进行格式转换时,也可以通过运行待检测文件对应的待检测命令,确定命令选项描述区域,从而便于后续确定出命令选项字段。
进一步的,在通过运行命令确定出软件描述字段之后,可以对软件描述字段进行正则解析才能够获得命令选项集合,具体的按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段,包括:按照正则筛选规则对所述第一软件描述字段进行正则解析处理,获得第一命令字段;以及,按照正则筛选规则对所述第二软件描述字段进行正则解析处理,获得第二命令字段。
其中,正则筛选规则可以理解为按照预设的正则表达式在软件描述字段中进行查找,从而确定软件描述字段中的命令字段。
在实际应用中,通过运行命令获得的软件描述区域是普通文本,为了从普通文本中筛选出命令选项,因此可以采用正则解析的方式,从软件描述字段中筛选出命令字段。
在本说明书一具体实施例中,按照正则筛选规则确定正则表达式,基于正则表达式从第一软件描述字段中筛选出第一命令字段,从第二软件描述字段中筛选出第二命令字段。
基于此,通过对软件描述字段进行正则解析,获取到描述性段落中的软件包命令选项,从而便于进行后续的兼容性比较。
步骤206:按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段。
其中,筛选规则可以理解为用于从软件描述字段中筛选命令字段的规则,筛选规则可以是标签筛选规则或正则筛选规则,在不同的使用情况下,采用不同的筛选规则。在对待检测文件进行格式转换之后,获得xhtml格式的文本的情况下,软件描述字段中具有xhtml格式标签,则可以按照这些标签进行命令字段的筛选。第一命令字段即可以理解为待检测文本中的命令选项在第一运行环境下的展示字段,第一命令字段为第一软件描述字段中包含的命令选项的展示字段,第二命令字段可以理解为待检测文本中的命令选项在第二运行环境下的展示字段,第二命令字段为第二软件描述字段中包含的命令选项的展示字段,第一命令字段或第二命令字段用于向用户展示目标软件对应的命令选项,从而使用户能够基于命令字段操作目标软件,因此后续可以通过比对第一命令字段和第二命令字段,确定目标软件在新操作系统中的兼容问题。
在实际应用中,由于软件描述字段中可能存在非软件包命令选项,因此需要按照筛选规则在软件描述字段中筛选出软件包命令选项,并且在不同的运行环境下,待检测文件对应的第一命令字段和第二命令字段可能不同,从而出现兼容性问题。此外,在从第一软件描述字段中筛选第一命令字段时,除直接筛选出全部命令选项的展示字段作为第一命令字段外,还可以在全部命令选项的展示字段中,指定部分命令选项的展示字段作为第一命令字段,以实现通过少量的命令字段完成兼容性比对,同理,第二命令字段的选择也可以按照第一命令字段的选择方式完成,本实施例在此不作过多赘述。
在本说明书一具体实施例中,按照筛选规则在源操作系统中的第一软件描述字段中筛选第一命令字段,排除掉获取到第一运行环境下描述性段落中的非软件包命令选项的情况,在新操作系统的第二软件描述字段中筛选第二命令字段,排除掉获取到第二运行环境下描述性段落中非软件包选项的情况,从而便于后续进行命令字段的比对,提高兼容性检测效果。
进一步的,命令选项通常由包含在段落标签中的加粗标签标记,因此可以根据段落中加粗的文字内容进行筛选,具体的在所述筛选规则为标签筛选规则的情况下,按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段,包括:按照所述标签筛选规则,在所述第一软件描述字段中确定第一标签组,根据所述第一标签组在所述第一软件描述字段中筛选第一命令字段;以及,按照所述标签筛选规则,在所述第二软件描述字段中确定第二标签组,根据所述第二标签组在所述第二软件描述字段中筛选第二命令字段;其中,所述第一标签组和所述第二标签组的标签属性相同,且用于定位命令字段位置。
其中,第一标签组可以理解为在第一运行环境下,第一软件描述字段中的标记标签组成的标签组,根据第一标签组可以在第一软件描述字段中筛选出第一命令字段。第二标签组可以理解为在第二运行环境下,第二软件描述字段中的标记标签组成的标签组,根据第二标签组可以在第二软件描述字段中筛选出第二命令字段。并且,第一标签组和第二标签组的标签属性相同,即第一标签组与第二标签组中的标签均为相同命令选项的标签,第一标签组和第二标签组中的标签均用于在软件描述字段中确定出命令选项对应的字段的具体位置。
在实际应用中,由于待检测文件的编写规则和对大量转化后的文件的解析经验,可以通过从软件描述字段中选择描述段落中加粗的文字内容作为命令选项的命令字段,因此可以先确定出软件描述字段中的p标签和b标签作为标签组,p标签表示段落,b标签表示加粗,并基于标签组在软件描述字段中筛选命令字段。
在本说明书一具体实施例中,按照标签筛选规则,在第一软件描述字段中确定第一标签组,根据第一标签组在第一软件描述字段中筛选出第一命令字段。在第二软件描述字段中确定第二标签组,根据第二标签组在第二软件描述字段中筛选第二命令字段。
基于此,通过标签组在软件描述字段中确定出每个命令字段对应的具体位置,从而准确地从软件描述字段中筛选出命令字段。
进一步的,为了排除掉获取到描述性段落中的非软件包命令选项的情况,可以基于标签组进行筛选,具体的可以分为多种情况,所述第一标签组包括目标标签和所述目标标签对应的关联标签;根据所述第一标签组在所述第一软件描述字段中筛选第一命令字段,包括:在所述关联标签包括前置关联标签或后置关联标签的情况下,根据所述目标标签和所述前置关联标签,或根据所述目标标签和所述后置关联标签,在所述第一软件描述字段中筛选第一命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述关联标签满足预设标签条件的情况下,根据所述目标标签和所述关联标签在所述第一软件描述字段中筛选第一命令字段。
其中,目标标签可以理解为标签组中的加粗标签,目标标签对应的关联标签可以理解为加粗标签对应的兄弟节点标签,在实际应用中,标签之间具有层级关系,例如一个标签包含另一个标签即称为父节点与子节点关系,相应的统一层级的称为兄弟节点标签,即关联标签。而在关联标签之中又分为前置关联标签和后置关联标签,前置关联标签即为目标标签的前兄弟节点标签,后置关联标签即为目标标签的后兄弟节点标签。
在实际应用中,在目标标签的关联标签包括前置关联标签或后置关联标签时,则说明目标标签的前后兄弟节点不同时存在,即目标标签可以存在前兄弟节点或后兄弟节点,此时可以根据目标标签和前置关联标签或目标标签和后置关联标签确定命令字段。而关联标签包括前置关联标签和后置关联标签时,则说明目标标签的前后兄弟节点同时存在,此时如果关联标签满足预设标签条件,则可以根据目标标签和关联标签在软件描述字段中筛选第一命令字段。预设标签条件可以是目标标签的前置关联标签或后置关联标签为换行标签、后置关联标签为参数标签或前置关联标签的文本为目标符号这三种条件。
在本说明书一具体实施例中,第一标签组包括目标标签和目标标签对应的关联标签,关联标签包括前置关联标签,则目标标签的前后兄弟节点不同时存在,此时可以根据目标标签和前置关联标签在第一软件描述字段中筛选第一命令字段。
相应的,上述为在第一软件描述字段中筛选第一命令字段,同理在第二软件描述字段中也可以采取与上述相同方法筛选第二命令字段,具体的所述第二标签组包括目标标签和所述目标标签对应的关联标签;根据所述第二标签组在所述第二软件描述字段中筛选第二命令字段,包括:在所述关联标签包括前置关联标签或后置关联标签的情况下,根据所述目标标签和所述前置关联标签,或根据所述目标标签和所述后置关联标签,在所述第二软件描述字段中筛选第二命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述关联标签满足预设标签条件的情况下,根据所述目标标签和所述关联标签在所述第二软件描述字段中筛选第二命令字段。对于筛选第二命令字段的细节均可参照上述筛选第一命令字段的具体实施细节,在此不作过多赘述。
基于此,通过不同分类情况的标签组,可以排除掉软件描述区域中非软件包命令选项,从而筛选出第一命令字段和第二命令字段,便于后续进行第一命令字段和第二命令字段的比较。
进一步的,在目标标签存在前置关联标签和后置关联标签的情况下,预设标签条件分为三种,具体的在所述关联标签包括前置关联标签和后置关联标签,且所述关联标签满足预设标签条件的情况下,根据所述目标标签和所述关联标签在所述第一软件描述字段中筛选第一命令字段,包括:在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签和所述后置关联标签均为换行标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述后置关联标签为参数标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签对应的标签文本为目标符号的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段。
其中,前置关联标签和后置关联标签均为换行标签类型可以理解为目标标签的前后兄弟节点中有一个或多个为换行标签;后置关联标签为参数标签类型可以理解为后兄弟节点为标记参数的参数标签;前置关联标签对应的标签文本为目标符号可以理解为目标标签的文本为目标符号。
在实际应用中,当目标标签的关联标签满足上述三种情况,则可以基于目标标签和前置关联标签和后置关联标签进行命令字段的位置确定,从而筛选出命令字段。
在本说明书一具体实施例中,在第一软件描述字段中确定目标标签和其对应的前置关联标签和后置关联标签,在前置关联标签和后置关联标签均为换行标签的情况下,则根据目标标签、前置关联标签和后置关联标签确定第一命令字段。
同理,在第二软件描述字段中筛选第二命令字段也可以参照上述方式进行实施,具体的所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签和所述后置关联标签均为换行标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第二软件描述字段中筛选第二命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述后置关联标签为参数标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第二软件描述字段中筛选第二命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签对应的标签文本为目标符号的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第二软件描述字段中筛选第二命令字段。对于筛选第二命令字段的细节均可参照上述筛选第一命令字段的具体实施细节,在此不作过多赘述。
基于此,通过多种不同类型的目标标签和关联标签的关系,可以准确的在软件描述区域中筛选出软件包的命令选项。
进一步的,由于待检测文本本身书写规范的问题,按照上述方式分类之后还是可能会出现获取错误或者解析不彻底的问题,因此可以在此基础上进行进一步的筛选过滤处理,具体的按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段,包括:按照筛选规则在所述第一软件描述字段中筛选第一初始命令字段,并对所述第一初始命令字段进行过滤处理,获得第一命令字段;以及,按照筛选规则在所述第二软件描述字段中筛选第二初始命令字段,并对所述第二初始命令字段进行过滤处理,获得第二命令字段。
其中,第一初始命令字段可以理解为在第一运行环境下,进行初筛后的软件包命令选项对应的字段,第二初始命令字段可以理解为在第二运行环境下,进行初筛后的软件包命令选项对应的字段。第一初始命令字段和第二初始命令字段均可以按照上述的方法进行筛选,按照如上方式分类后仍然可能会有获取错误或者解析不彻底的问题,为此可以在此分类基础上进一步去重和特殊符号的解析处理。
在本说明书一具体实施例中,按照上述方式从第一软件描述字段中筛选出第一初始命令字段之后,对第一初始命令字段进行进一步过滤处理,筛选出第一命令字段;相应的按照上述方式从第二软件描述字段中筛选出第二初始命令字段之后,对第二初始命令字段进行进一步过滤处理,筛选出第二命令字段。
基于此,通过在第一次筛选出的第一初始命令字段或第二初始命令字段的基础上,进行进一步过滤筛选,从而可以过滤掉获取到非软件包命令选项的情况,保证后续兼容性检测的正确性。
进一步的,进行进一步筛选可以是在初始命令字段的基础上进行去重和特殊符号的解析处理,具体的对所述第一初始命令字段进行过滤处理,获得第一命令字段,包括:对所述第一初始命令字段进行分类处理,获得第一长命令字段和第一短命令字段;分别对所述第一长命令字段和所述第一短命令字段进行解析;根据长命令解析结果对所述第一长命令字段进行过滤,获得第一目标长命令字段,以及根据短命令解析结果对所述第一短命令字段进行过滤,获得第一目标短命令字段;将所述第一目标长命令字段和所述第一目标短命令字段作为所述第一命令字段。
其中,第一长命令字段可以理解为长命令选项对应的字段,第一短命令字段可以理解为短命令选项对应的字段,例如-a属于短命令字段,--all属于长命令字段。将长命令选项和短命令选项进行分类,后续可以分别长命令选项和短命令选项进行解析,并根据解析结果进行过滤,从而获得第一目标长命令字段和第一目标短命令字段,第一目标长命令字段即为过滤后的第一长命令字段,第一目标短命令字段即为过滤后的第一短命令字段。
在本说明书一具体实施例中,对第一初始命令字段进行分类处理,获得第一长命令字段和第一短命令字段;分别对第一长命令字段和第一短命令字段进行解析,根据长命令解析结果对第一长命令字段进行过滤,获得第一目标长命令字段,根据短命令解析结果对第一短命令字段进行过滤,获得第一目标短命令字段。
基于此,通过进一步的过滤筛选,可以获得更加准确的命令选项,从而提高后续兼容性检测的正确率。
步骤208:比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。
其中,在获得第一运行环境下的第一命令字段与第二运行环境下的第二命令字段之后,则可以通过比对第一命令字段与第二命令字段确定目标软件在第二运行环境中的兼容信息,兼容信息可以理解为目标软件在第二运行环境下的兼容性情况,根据兼容信息可以分析判断目标软件是否可以在第二运行环境中正常运行。
在实际应用中,当分别获取到目标软件在不同环境中的软件包的命令选项之后,可以通过比对不同环境中的命令选项,从而进行兼容性评估。
在本说明书一具体实施例中,比较第一命令字段和第二命令字段,根据比较结果确定目标软件在第二运行环境中的兼容信息,兼容信息为不兼容。
进一步的,在比较过程中可能会出现多种不同情况,因此根据不同的比较结果可以确定出不同的兼容信息,具体的比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息,包括:根据命令属性信息在所述第一命令字段中确定第一目标命令字段,以及在所述第二命令字段中确定第二目标命令字段;基于所述第一目标命令字段和所述第二目标命令字段创建比对任务集;通过执行所述比对任务集中包括的比对任务,确定所述目标软件在所述第二运行环境中的兼容信息。
其中,命令属性信息可以理解为每个命令选项对应的属性信息,根据命令属性信息可以在第一命令字段和第二命令字段中确定出相同命令的命令选项,从而进行命令字段的一一比对。第一目标命令字段即为从第一命令字段中确定出的命令字段,第二目标命令字段即为从第二命令字段中确定出的命令字段,后续可以比对第一目标命令字段和第二目标命令字段,确定目标软件的兼容问题。比对任务集可以理解为包括多个比对任务的集合,每个比对任务表征为相同命令对应的不同环境下的命令字段之间的比对,通过执行所有比对任务之后,根据每个比对任务的比对结果确定目标软件在第二运行环境中的兼容信息。
在实际应用中,在所有命令选项完全相同,没有新增、缺失、变更的选项的情况下,则说明完全兼容。在有新增的命令选项,没有缺失和变更的,则说明完全兼容。在新操作系统整个命令缺失,则说明不兼容。在源操作系统整个命令缺失,此时无法判断是否兼容。
在本说明书一具体实施例中,根据命令属性信息在第一命令字段中确定第一目标命令字段,在第二命令字段中确定第二目标命令字段,根据第一目标命令字段和第二目标命令字段创建比对任务,执行比对任务确定目标软件在第二运行环境中的兼容信息。
基于此,通过对源操作系统和新操作系统上同一个命令的命令选项进行兼容性比对分析,从而可以确定目标软件在新操作系统中的兼容信息。
本说明书提供的一种通过待检测文件在第一运行环境中的第一软件描述字段确定第一命令字段,在第二运行环境中的第二软件描述字段确定第二命令字段,比较第一命令字段和第二命令字段,从而实现对目标软件在第二运行环境下的兼容检测,在不分别运行目标软件的每个命令的情况下,获取到待检测文件对应的命令字段,并通过在命令字段的维度对目标软件进行兼容性分析,提高了软件兼容性检测效果以及效率。
下述结合附图3,以本说明书提供的数据检测方法在云应用迁移的应用为例,对所述数据检测方法进行进一步说明。其中,图3示出了本说明书一个实施例提供的一种数据检测方法的处理过程流程图,具体包括以下步骤。
步骤302:获取目标软件对应的初始待检测文件,对初始待检测文件进行格式转换处理,获得待检测文件。
在一种可实现的方式中,项目运营方想要将目标用户的云应用从服务器A迁移到服务器B上,服务器A是使用的系统A,而服务器B是使用的系统B,因此需要进行云应用的兼容性检测,获取云应用对应的初始待检测文件,将初始待检测文件通过groff排版系统进行格式转换处理,获得转换后的待检测文件。
步骤304:确定待检测文件在第一运行环境中的第一软件文档,并从第一软件文档中提取第一软件描述字段,确定待检测文件在第二运行环境中的第二软件文档,并从第二软件文档中提取第二软件描述字段。
在一种可实现的方式中,确定云应用的man page文件在系统A中的第一软件文档,从第一软件文档中提取出第一软件描述字段;确定云应用的man page文件系统B中的第二软件文档,从第二软件文档中提取出第二软件描述字段。
步骤306:按照标签筛选规则,在第一软件描述字段中确定第一标签组,根据第一标签组在第一软件描述字段中筛选第一命令字段,在第二软件描述字段中确定第二标签组,根据第二标签组在所述第二软件描述字段中筛选第二命令字段。
在一种可实现的方式中,按照标签筛选规则,在第一软件描述字段中确定第一标签组,第一标签组中包括加粗标签和其对应的前置关联标签,根据加粗标签和前置关联标签在第一软件描述字段中筛选第一命令字段。
在另一种可实现的方式中,按照标签筛选规则,在第一软件描述字段中确定第一标签组,第一标签组中包括加粗标签和对应的前置关联标签和后置关联标签,且前置关联标签和后置关联标签均为换行标签,则根据目标标签、前置关联标签和后置关联标签在第一软件描述字段中筛选第一命令字段。
在另一种可实现的方式中,按照标签筛选规则,在第二软件描述字段中确定第二标签组,第二标签组中包括加粗标签和对应的前置关联标签和后置关联标签,且后置关联标签为参数标签,则根据目标标签、前置关联标签和后置关联标签在第二软件描述字段中筛选第二命令字段。
在另一种可实现的方式中,按照标签筛选规则,在第二软件描述字段中确定第二标签组,第二标签组中包括加粗标签和对应的前置关联标签和后置关联标签,且所述关联标签对应的标签文本为逗号,则根据目标标签、前置关联标签和后置关联标签在第二软件描述字段中筛选第二命令字段。
步骤308:根据命令属性信息在第一命令字段中确定第一目标命令字段,以及在第二命令字段中确定第二目标命令字段。
在一种可实现的方式中,根据命令属性信息在第一命令字段和第二命令字段中,确定属于相同命令的命令字段。
步骤310:基于第一目标命令字段和第二目标命令字段创建比对任务集,通过执行比对任务集中包括的比对任务,确定目标软件在第二运行环境中的兼容信息。
在一种可实现的方式中,基于第一目标命令字段和第二目标命令字段创建比对任务集,通过执行比对任务集中包括的比对任务,确定云应用在服务器B的系统B中的兼容信息。
本说明书提供的一种应用于云应用迁移的数据检测方法,通过待检测文件在第一运行环境中的第一软件描述字段确定第一命令字段,在第二运行环境中的第二软件描述字段确定第二命令字段,比较第一命令字段和第二命令字段,从而实现对目标软件在第二运行环境下的兼容检测,在不分别运行目标软件的每个命令的情况下,获取到待检测文件对应的命令字段,并通过在命令字段的维度对目标软件进行兼容性分析,提高了软件兼容性检测效果以及效率。
与上述方法实施例相对应,本说明书还提供了数据检测装置实施例,图4示出了本说明书一个实施例提供的一种数据检测装置的结构示意图。如图4所示,该装置包括:
第一确定模块402,被配置为确定目标软件对应的待检测文件;
第二确定模块404,被配置为确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段;
筛选模块406,被配置为按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段;
比较模块408,被配置为比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。
可选的,所述第一确定模块402,进一步被配置为:获取所述目标软件对应的初始待检测文件;对所述初始待检测文件进行格式转换处理,获得待检测文件。
可选的,所述第二确定模块404,进一步被配置为:确定所述待检测文件在第一运行环境中的第一软件文档,并从所述第一软件文档中提取第一软件描述字段;以及,确定所述待检测文件在第二运行环境中的第二软件文档,并从所述第二软件文档中提取第二软件描述字段。
可选的,筛选模块406,进一步被配置为:按照所述标签筛选规则,在所述第一软件描述字段中确定第一标签组,根据所述第一标签组在所述第一软件描述字段中筛选第一命令字段;以及,按照所述标签筛选规则,在所述第二软件描述字段中确定第二标签组,根据所述第二标签组在所述第二软件描述字段中筛选第二命令字段;其中,所述第一标签组和所述第二标签组的标签属性相同,且用于定位命令字段位置。
可选的,筛选模块406,进一步被配置为:在所述关联标签包括前置关联标签或后置关联标签的情况下,根据所述目标标签和所述前置关联标签,或根据所述目标标签和所述后置关联标签,在所述第一软件描述字段中筛选第一命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述关联标签满足预设标签条件的情况下,根据所述目标标签和所述关联标签在所述第一软件描述字段中筛选第一命令字段。
可选的,筛选模块406,进一步被配置为:在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签和所述后置关联标签均为换行标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述后置关联标签为参数标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段;或,在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签对应的标签文本为目标符号的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段。
可选的,筛选模块406,进一步被配置为:按照筛选规则在所述第一软件描述字段中筛选第一初始命令字段,并对所述第一初始命令字段进行过滤处理,获得第一命令字段;以及,按照筛选规则在所述第二软件描述字段中筛选第二初始命令字段,并对所述第二初始命令字段进行过滤处理,获得第二命令字段。
可选的,筛选模块406,进一步被配置为:对所述第一初始命令字段进行分类处理,获得第一长命令字段和第一短命令字段;分别对所述第一长命令字段和所述第一短命令字段进行解析;根据长命令解析结果对所述第一长命令字段进行过滤,获得第一目标长命令字段,以及根据短命令解析结果对所述第一短命令字段进行过滤,获得第一目标短命令字段;将所述第一目标长命令字段和所述第一目标短命令字段作为所述第一命令字段。
可选的,比较模块408,进一步被配置为:根据命令属性信息在所述第一命令字段中确定第一目标命令字段,以及在所述第二命令字段中确定第二目标命令字段;基于所述第一目标命令字段和所述第二目标命令字段创建比对任务集;通过执行所述比对任务集中包括的比对任务,确定所述目标软件在所述第二运行环境中的兼容信息。
可选的,所述第二确定模块404,进一步被配置为:通过在所述第一运行环境中运行所述待检测文件对应的待检测命令,确定所述待检测文件在第一运行环境中的第一软件描述字段;以及,通过在所述第二运行环境中运行所述待检测文件对应的待检测命令,确定所述待检测文件在第二运行环境中的第二软件描述字段。
可选的,筛选模块406,进一步被配置为:按照正则筛选规则对所述第一软件描述字段进行正则解析处理,获得第一命令字段;以及,按照正则筛选规则对所述第二软件描述字段进行正则解析处理,获得第二命令字段。
本说明书提供的一种数据检测装置,包括:第一确定模块,被配置为确定目标软件对应的待检测文件;第二确定模块,被配置为确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段;筛选模块,被配置为按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段;比较模块,被配置为比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。通过待检测文件在第一运行环境中的第一软件描述字段确定第一命令字段,在第二运行环境中的第二软件描述字段确定第二命令字段,比较第一命令字段和第二命令字段,从而实现对目标软件在第二运行环境下的兼容检测,在不分别运行目标软件的每个命令的情况下,获取到待检测文件对应的命令字段,并通过在命令字段的维度对目标软件进行兼容性分析,提高了软件兼容性检测效果以及效率。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据检测装置而言,由于其基本相似于数据检测方法实施例,所以描述的比较简单,相关之处参见数据检测方法实施例的部分说明即可。
图5示出了根据本说明书一个实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN,Public SwitchedTelephone Network)、局域网(LAN,Local Area Network)、广域网(WAN,Wide AreaNetwork)、个域网(PAN,Personal Area Network)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC,networkinterface controller))中的一个或多个,诸如IEEE802.11无线局域网(WLAN,WirelessLocal Area Network)无线接口、全球微波互联接入(Wi-MAX,WorldwideInteroperability for Microwave Access)接口、以太网接口、通用串行总线(USB,Universal Serial Bus)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC,Near FieldCommunication)。
在本说明书的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或个人计算机(PC,Personal Computer)的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520用于执行如下计算机可执行指令,该计算机可执行指令被处理器执行时实现上述数据检测方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于计算设备实施例而言,由于其基本相似于数据检测方法实施例,所以描述的比较简单,相关之处参见数据检测方法实施例的部分说明即可。
本说明书一实施例还提供提供了一种数据检测系统,所述系统包括提供第一运行环境的终端和提供第二运行环境的终端;所述提供第一运行环境的终端或所述提供第二运行环境的终端,用于存储软件兼容检测可执行指令;所述软件兼容检测可执行指令被所述终端执行时实现上述数据检测方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据检测系统实施例而言,由于其基本相似于数据检测方法实施例,所以描述的比较简单,相关之处参见数据检测方法实施例的部分说明即可。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现上述数据检测方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于计算机可读存储介质实施例而言,由于其基本相似于数据检测方法实施例,所以描述的比较简单,相关之处参见数据检测方法实施例的部分说明即可。
本说明书一实施例还提供一种计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行上述数据检测方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于计算机程序实施例而言,由于其基本相似于数据检测方法实施例,所以描述的比较简单,相关之处参见数据检测方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下, 在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书实施例的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

Claims (14)

1.一种数据检测方法,包括:
确定目标软件对应的待检测文件,其中,所述待检测文件为对包含文本格式化指令的文本文件进行格式转换处理获得;
确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段;
按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段;
比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息。
2.如权利要求1所述的方法,确定目标软件对应的待检测文件,包括:
获取所述目标软件对应的初始待检测文件;
对所述初始待检测文件进行格式转换处理,获得待检测文件。
3.如权利要求1所述的方法,确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段,包括:
确定所述待检测文件在第一运行环境中的第一软件文档,并从所述第一软件文档中提取第一软件描述字段;以及,
确定所述待检测文件在第二运行环境中的第二软件文档,并从所述第二软件文档中提取第二软件描述字段。
4.如权利要求1所述的方法,在所述筛选规则为标签筛选规则的情况下,按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段,包括:
按照所述标签筛选规则,在所述第一软件描述字段中确定第一标签组,根据所述第一标签组在所述第一软件描述字段中筛选第一命令字段;以及,
按照所述标签筛选规则,在所述第二软件描述字段中确定第二标签组,根据所述第二标签组在所述第二软件描述字段中筛选第二命令字段;
其中,所述第一标签组和所述第二标签组的标签属性相同,且用于定位命令字段位置。
5.如权利要求4所述的方法,所述第一标签组包括目标标签和所述目标标签对应的关联标签;
根据所述第一标签组在所述第一软件描述字段中筛选第一命令字段,包括:
在所述关联标签包括前置关联标签或后置关联标签的情况下,根据所述目标标签和所述前置关联标签,或根据所述目标标签和所述后置关联标签,在所述第一软件描述字段中筛选第一命令字段;或,
在所述关联标签包括前置关联标签和后置关联标签,且所述关联标签满足预设标签条件的情况下,根据所述目标标签和所述关联标签在所述第一软件描述字段中筛选第一命令字段。
6.如权利要求5所述的方法,在所述关联标签包括前置关联标签和后置关联标签,且所述关联标签满足预设标签条件的情况下,根据所述目标标签和所述关联标签在所述第一软件描述字段中筛选第一命令字段,包括:
在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签和所述后置关联标签均为换行标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段;或,
在所述关联标签包括前置关联标签和后置关联标签,且所述后置关联标签为参数标签类型的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段;或,
在所述关联标签包括前置关联标签和后置关联标签,且所述前置关联标签对应的标签文本为目标符号的情况下,根据所述目标标签、所述前置关联标签和所述后置关联标签在所述第一软件描述字段中筛选第一命令字段。
7.如权利要求1所述的方法,按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段,包括:
按照筛选规则在所述第一软件描述字段中筛选第一初始命令字段,并对所述第一初始命令字段进行过滤处理,获得第一命令字段;以及,
按照筛选规则在所述第二软件描述字段中筛选第二初始命令字段,并对所述第二初始命令字段进行过滤处理,获得第二命令字段。
8.如权利要求7所述的方法,对所述第一初始命令字段进行过滤处理,获得第一命令字段,包括:
对所述第一初始命令字段进行分类处理,获得第一长命令字段和第一短命令字段;
分别对所述第一长命令字段和所述第一短命令字段进行解析;
根据长命令解析结果对所述第一长命令字段进行过滤,获得第一目标长命令字段,以及根据短命令解析结果对所述第一短命令字段进行过滤,获得第一目标短命令字段;
将所述第一目标长命令字段和所述第一目标短命令字段作为所述第一命令字段。
9.如权利要求1所述的方法,比较所述第一命令字段与所述第二命令字段,根据比较结果确定所述目标软件在所述第二运行环境中的兼容信息,包括:
根据命令属性信息在所述第一命令字段中确定第一目标命令字段,以及在所述第二命令字段中确定第二目标命令字段;
基于所述第一目标命令字段和所述第二目标命令字段创建比对任务集;
通过执行所述比对任务集中包括的比对任务,确定所述目标软件在所述第二运行环境中的兼容信息。
10.如权利要求1所述的方法,确定所述待检测文件在第一运行环境中的第一软件描述字段,以及所述待检测文件在第二运行环境中的第二软件描述字段,包括:
通过在所述第一运行环境中运行所述待检测文件对应的待检测命令,确定所述待检测文件在第一运行环境中的第一软件描述字段;以及,
通过在所述第二运行环境中运行所述待检测文件对应的待检测命令,确定所述待检测文件在第二运行环境中的第二软件描述字段。
11.如权利要求10所述的方法,按照筛选规则在所述第一软件描述字段中筛选第一命令字段,以及在所述第二软件描述字段中筛选第二命令字段,包括:
按照正则筛选规则对所述第一软件描述字段进行正则解析处理,获得第一命令字段;以及,
按照正则筛选规则对所述第二软件描述字段进行正则解析处理,获得第二命令字段。
12.一种数据检测系统,所述系统包括提供第一运行环境的终端和提供第二运行环境的终端;
所述提供第一运行环境的终端或所述提供第二运行环境的终端,用于存储软件兼容检测可执行指令;
所述软件兼容检测可执行指令被所述终端执行时实现如权利要求1-11任意一项所述方法的步骤。
13.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至11任意一项所述数据检测方法的步骤。
14.一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现权利要求1至11任意一项所述数据检测方法的步骤。
CN202310401246.9A 2023-04-14 2023-04-14 数据检测方法及系统 Active CN116136825B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310401246.9A CN116136825B (zh) 2023-04-14 2023-04-14 数据检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310401246.9A CN116136825B (zh) 2023-04-14 2023-04-14 数据检测方法及系统

Publications (2)

Publication Number Publication Date
CN116136825A CN116136825A (zh) 2023-05-19
CN116136825B true CN116136825B (zh) 2023-09-19

Family

ID=86334696

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310401246.9A Active CN116136825B (zh) 2023-04-14 2023-04-14 数据检测方法及系统

Country Status (1)

Country Link
CN (1) CN116136825B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105099746A (zh) * 2014-05-21 2015-11-25 中兴通讯股份有限公司 Shell执行方法及装置
CN111813693A (zh) * 2020-07-31 2020-10-23 南方科技大学 一种软件兼容性检测方法、智能终端及存储介质
CN112506946A (zh) * 2020-12-03 2021-03-16 平安科技(深圳)有限公司 业务数据查询方法、装置、设备及存储介质
CN113448690A (zh) * 2021-08-27 2021-09-28 阿里云计算有限公司 监测方法及装置
CN113791973A (zh) * 2021-08-23 2021-12-14 湖北省农村信用社联合社网络信息中心 基于农信系统的兼容性基线检测方法及系统
CN113918465A (zh) * 2021-10-28 2022-01-11 浪潮(山东)计算机科技有限公司 兼容性测试方法、装置、电子设备及可读存储介质
CN114547628A (zh) * 2022-02-24 2022-05-27 浙江网商银行股份有限公司 漏洞检测方法及装置
CN115604343A (zh) * 2022-09-28 2023-01-13 北京科银京成技术有限公司(Cn) 一种数据传输方法、系统、电子设备和存储介质
CN115757092A (zh) * 2022-10-21 2023-03-07 北京计算机技术及应用研究所 一种基于二进制文件符号表的应用软件兼容性检测方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7350207B2 (en) * 2001-05-25 2008-03-25 Tellabs Operations, Inc. Rule-based system and method for downloading computer software over a network
US20070234316A1 (en) * 2006-03-07 2007-10-04 Sap Ag Methods and systems for development of software for complex systems

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105099746A (zh) * 2014-05-21 2015-11-25 中兴通讯股份有限公司 Shell执行方法及装置
CN111813693A (zh) * 2020-07-31 2020-10-23 南方科技大学 一种软件兼容性检测方法、智能终端及存储介质
CN112506946A (zh) * 2020-12-03 2021-03-16 平安科技(深圳)有限公司 业务数据查询方法、装置、设备及存储介质
CN113791973A (zh) * 2021-08-23 2021-12-14 湖北省农村信用社联合社网络信息中心 基于农信系统的兼容性基线检测方法及系统
CN113448690A (zh) * 2021-08-27 2021-09-28 阿里云计算有限公司 监测方法及装置
CN113918465A (zh) * 2021-10-28 2022-01-11 浪潮(山东)计算机科技有限公司 兼容性测试方法、装置、电子设备及可读存储介质
CN114547628A (zh) * 2022-02-24 2022-05-27 浙江网商银行股份有限公司 漏洞检测方法及装置
CN115604343A (zh) * 2022-09-28 2023-01-13 北京科银京成技术有限公司(Cn) 一种数据传输方法、系统、电子设备和存储介质
CN115757092A (zh) * 2022-10-21 2023-03-07 北京计算机技术及应用研究所 一种基于二进制文件符号表的应用软件兼容性检测方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Performance and Language Compatibility in Software Pattern Detection;Vikas Tripathi等;《2009 IEEE International Advance Computing Conference》;第1639-1643页 *
云计算中分布式软件系统兼容性自动检测方法;史绍恩;《机械与电子》;第39卷(第12期);第39-43页 *

Also Published As

Publication number Publication date
CN116136825A (zh) 2023-05-19

Similar Documents

Publication Publication Date Title
CN109710508B (zh) 测试方法、测试装置、测试设备及计算机可读存储介质
US10088969B2 (en) Image-based automation systems and methods
EP3866028A2 (en) Method and apparatus for constructing quality evaluation model, device and storage medium
CN108762743B (zh) 一种数据表操作代码生成方法及装置
CN108647355A (zh) 测试用例的展示方法、装置、设备及存储介质
CN108399072B (zh) 应用页面更新方法和装置
CN107133165B (zh) 浏览器兼容性检测方法及装置
CN110532056B (zh) 一种应用于用户界面中的控件识别方法及装置
US11113137B2 (en) Error incident fingerprinting with unique static identifiers
CN113688288B (zh) 数据关联分析方法、装置、计算机设备和存储介质
CN110737689A (zh) 数据标准符合性检测方法、装置、系统及存储介质
EP2951680B1 (en) Acquiring identification of an application lifecycle management entity associated with similar code
Sun et al. Ui components recognition system based on image understanding
WO2023038722A1 (en) Entry detection and recognition for custom forms
CN110941629A (zh) 元数据处理方法、装置、设备及计算机可读存储介质
CN109144871B (zh) 一种自动化测试元素的识别方法及装置
Yang et al. UIS-hunter: Detecting UI design smells in Android apps
Hoffswell et al. Interactive repair of tables extracted from pdf documents on mobile devices
CN116136825B (zh) 数据检测方法及系统
WO2021140594A1 (ja) 操作ログ取得装置および操作ログ取得方法
CN108536576B (zh) 用于对应用程序的测试脚本进行优化的方法和装置
CN113407678B (zh) 知识图谱构建方法、装置和设备
CN112395189A (zh) 测试视频自动识别方法、装置、设备及存储介质
JP6633009B2 (ja) 表データ分析プログラム
CN109542774B (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