掌桥专利:专业的专利平台
掌桥专利
首页

测试方法、装置、电子设备和存储介质

文献发布时间:2024-04-18 19:59:31


测试方法、装置、电子设备和存储介质

技术领域

本申请属于计算机领域,具体涉及一种测试方法、电子设备和存储介质。

背景技术

随着互联网的发展,各种数据信息的重要性愈发凸显。一些重要信息常常会记录在指定格式的文件中(例如XML文件)。随着时间的推移,记录在文件中的信息往往会发生变更。出于性能等方面的考虑,时常需要对变更前后的文件进行测试。通常情况下,测试的目的是为了检测按照规定已经被废弃的指定对象是否已经废弃。

在一些测试场景(例如金融信贷领域的测试场景)下,为了保证结果的准确性,相关技术往往需要人工参与。然而,在文件中记录的信息量较大的情况下,这种依赖人工参与的方式往往效率较低。

发明内容

本申请实施例提供一种测试方法、电子设备和存储介质,能够解决相关技术这种依赖人工参与的方式往往效率较低的问题。

第一方面,本申请实施例提供了一种测试方法,包括:

获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;

确定关键测试信息,并针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容;

将所述已减少内容和关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。

第二方面,本申请实施例提供了一种测试装置,包括:

获取模块,用于获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;

对比模块,用于确定关键测试信息,并针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容;以及将所述已减少内容和关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。

第三方面,本申请实施例提供了一种电子设备,包括:存储器和处理器,所述存储器存储计算机程序,当所述计算机程序被执行时实现如第一方面所述的方法的步骤。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。

第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。

第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。

在本申请实施例中,获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;确定关键测试信息,并针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容;将所述已减少内容和关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。由于测试目的就是为了检测已减少的内容是否符合要求,通过将所述第一文件和所述第二文件进行对比,只获取第二文件相对于第一文件已减少的内容,而无需获取第二文件相对于所述第一文件已增加的内容,这样避免由于获取对测试无用的内容而浪费更多资源,并且获取到的已减少内容是针对关键测试信息来说的,如此可以保证获取到的已减少内容一定是测试需要的,避免获取测试到无用信息而影响测试进度和测试效率。本申请获取已减少内容和生成测试报告均无需再依赖人工,大大提高了效率,解决了相关技术这种依赖人工参与的方式往往效率较低的问题。同时,避免了人力主观因素的干扰,也提高了测试结果的准确性。

附图说明

图1是本申请实施例提供的测试方法的总体构思框架的示意图;

图2是本申请实施例提供的一种测试方法的流程图;

图3是本申请实施例提供的另一种测试方法的流程图;

图4是本申请实施例提供的又一种化测试方法的流程图;

图5是本申请实施例提供的一种测试装置的结构框图;

图6是本申请实施例里提供的一种电子设备的结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。

在金融信贷领域的风控系统实施过程中,通常会接入各种数据,综合使用接入的这些数据从而评估申请人的风险情况,决策是否授信。这些数据包括内部数据(如申请人申请时填写的一些信息),人行征信报告,从运营商、大数据公司、合作方采购的数据(如芝麻分、同盾分等),风控模型(如申请评分卡、行为评分卡等),自助加工的变量等。

风控系统可以将这些获取的数据以指定格式(例如XML格式)的文件送到决策系统进行决策。由于时间变更,文件中的指定对象(例如变量)累积越来越多,很多针对指定对象的决策已经废弃使用,出于对性能等方面的考虑,定期将下掉废弃的指定对象。由于批次下掉的指定对象的数量众多,需要对变更前后的文件做测试复核,确保正确下掉下完所有指定对象(例如变量),无错下、漏下的情况。

相关技术一般会利用对比工具找出文件变更前后的所有差异内容(包括所有增加的内容和所有减少的内容),在找出差异内容之后,需要依赖人工从差异内容中再筛选出已下掉的内容,然后再从已下掉的内容中查找测试所需的已下掉的内容,并且需要人工将差异内容和目标内容进行比对。如果一次需要下掉的指定对象的数目较多,例如上百个,此项操作无疑是相当耗时且容易出错的。

本申请实施例提供一种测试方法,先获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;确定关键测试信息,并针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容,而无需获取所述第二文件相对于所述第一文件已增加的内容,这样在一些测试场景(例如金融信贷领域的测试场景)下,可直接得到已下掉的内容,而无需依赖人工从差异内容中再筛选出已下掉的内容,大大提高了效率,解决了相关技术这种依赖人工参与的方式往往效率较低的问题。同时,已减少的内容是针对关键信息来说的,也就是说已减少的内容是关键信息方面已经减少的内容,关键信息是指测试必不可少的信息,如此得到的已减少内容就是测试一定需要的内容,如此一来,与获取到更多内容后再筛选,可以保证内容获取的精准性,加快测试进度和效率。在得到差异内容之后,通过将差异内容和目标内容进行比对,得到测试报告,而无需人工将差异内容和目标内容进行比对,又进一步提高了效率。此外,整个自动化测试的过程中,由于没有人工参与,避免了人力主观因素的干扰,在提高了效率的同时,也提高了测试结果的准确性。

需了解的是,本申请实施例中针对同一名词或情况的论述可前后参照。也就是说,在一个实施例中针对某一名词或情况的论述也可以应用于其他实施例中针对该名词或情况的描述,只要逻辑上不矛盾即可。

下面结合附图,详细说明本申请实施例提供的技术方案。

本申请实施例提供的测试方法应用于测试的场景下,例如金融信贷领域的测试场景。本申请实施例提供的测试方法可以由电子设备执行,其中,电子设备可以是一台电子设备,也可以是多台电子设备。也就是说,本申请实施例提供的测试的方法可以由一台电子设备执行,也可以由多台电子设备相互配合执行。其中,所述电子设备例如可以为诸如笔记本电脑、平板等终端设备,也可以为服务器,比如独立的物理服务器、由多个服务器组成的服务器集群或者能够进行云计算的云服务器。电子设备上可安装有用于进行文件对比的软件,例如各种对比测试工具。

图1是本申请实施例提供的测试方法的总体构思框架的示意图。如图1所示,电子设备可通过软件(例如各种对比测试工具)先载入第一文件和第二文件,并将第一文件和第二文件进行对比,得到差异内容(即所述第二文件相对于所述第一文件关于关键测试信息的已减少内容)。在得到差异内容之后,电子设备可以获取目标内容(即关于关键测试信息的预规定减少内容),并将目标内容与差异内容进行内容对比,得到测试报告。在得到测试报告之后,电子设备可输出测试报告方便开发人员根据测试报告的记载进行后续工作。

图2是本申请实施例提供的一种测试方法的流程图。如图2所示,本申请实施例提供的测试方法可以包括如下步骤:

步骤210,获取第一文件和第二文件,第二文件为将第一文件的内容进行变更后得到的文件;

在本申请实施例中,第一文件和第二文件可以为待比较的文件。第一文件可以为比较前的原始文件,第二文件可以为在第一文件的基础上进行内容变更之后得到的文件。其中,变更可以包括新增操作、删除操作和修改操作中的至少一种。

所述第一文件和所述第二文件的类型可以保持一致,可以为XML文件,也可以为JSON文件等数据格式文件。

在本申请实施例中,第一文件可以来自于外部输入,例如外部设备传输得到的文件。第一文件也可以来自电子设备内部,例如测试人员手动编辑得到的文件等。相应地,获取第一文件可以具体为,电子设备接收来自外部设备传输的第一文件,或者电子设备基于用户输入的信息,得到第一文件。

同时,在本申请实施例中,可以在测试系统执行过程中产生所述第一文件和所述第二文件,也可以从日志和数据库中获取数据,并将获取的数据存储在指定格式的文档(例如XML文档)中,据此作为第一文件和第二文件。第一文件和第二文件可放置在指定位置,通过工具可打开或载入第一文件和第二文件。所述第二文件可以为对所述第一文件进行内容减少或内容增加后得到的文件。

在本申请实施例中,在得到第一文件和第二文件之后,即可以开始将第一文件和第二文件进行对比。

步骤220,确定关键测试信息,并针对关键测试信息将第一文件和第二文件进行对比,得到第二文件相对于第一文件关于关键测试信息的已减少内容;

在本申请实施例中,关于关键测试信息的已减少内容也可以理解为第二文件相对于第一文件在关键信息方面的差异内容。已减少内容可以为所述第一文件的部分内容,例如文档参数、使用函数的不同,也可以为所述第一文件的全部内容。在得到已减少内容之后,可将已减少内容存在一个文件中,此文件的文件格式可以与所述第一文件的文件格式相同,也可以与所述第一文件的文件格式不同。例如,第一文件为XML文件,存储已减少内容的文件为表格文件。

在本申请实施例中,将所述第一文件和所述第二文件进行对比,可以为先指定第一文件中的某一对象(例如节点,或者,节点下的变量)作为关键测试信息,然后在所述第二文件中,寻找所述第一文件中的此对象,据此得到关于所述关键测试信息的已减少内容,得到关于所述关键测试信息的已减少内容可以再与其他内容进行二次对比。

可以理解的,在某一对象涵盖节点、变量和值的情况下,相关技术的对比范围涵盖了节点、变量和值。以下掉的内容为变量为例,对于下变量,重点关注的是节点和变量,对于值是否一致是不在关注范围内的。在下变量前后的文件版本中,虽然执行了相同的请求操作,但某些变量,例如时间变量等在两次执行操作中的取值是不同的。由于相关技术的对比范围涵盖了节点、变量和值,因而会判定下变量前后的文件不一致,认为执行时间变量异常,与实际预期不一致,产生错误结论。在这种情况下,往往需要人工介入,通过人工判断忽略这些干扰内容。但是,这样会进一步降低测试的效率。

在本申请中,可以先指定需要测试所需的关键测试信息,比如上述的可以将测试节点和变量是否下掉的测试指示作为关键测试信息,在对比第一文件和第二文件时,只重点关注在节点和变量方面,第二文件相对于第一文件已减少内容,而忽略非关键测试信息(比如变量的值)的差异,可以无需人工进一步判断,进而提高了测试的效率。

在本申请的一个实施例中,第一文件和第二文件中均存在节点,关键测试信息包括对节点是否下掉的测试指示;所述已减少内容包括至少一个已下掉的节点。步骤220中针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容,可包括:将所述第一文件中各节点和所述第二文件中各节点进行对比,获取存在于所述第一文件中、不存在于所述第二文件中的节点,并将获取到的节点作为已下掉的节点。如此,可以达到在对比过程中,直接得到关于所述关键测试信息的已下掉的节点,而无需依赖人工从差异内容中再筛选出关于所述关键测试信息的已下掉的节点,大大提高了效率。其中,节点可以是任何自定义的对象,例如文件中的模型名称、函数名称、信贷申请人以及其他可以下附变量的对象。以节点为信贷申请人为例,节点下的变量可以为身份证号码、姓名、年龄等。

在测试的环境下,例如已减少内容包括至少一个已下掉的节点,第一文件包括的内容如表1-1所示:

表1-1

第二文件可以如表1-2所示:

表1-2

将第一文件和第二文件对比可以发现,已减少内容可以表示为下表1-3所示:

表1-3

在本申请的另一个实施例中,第一文件和第二文件中均存在节点,第一文件和第二文件中均存在节点,且第一文件中存在具有变量的节点,关键测试信息包括对节点的变量是否下掉的测试指示;已减少内容包括至少一个节点的至少一个下掉变量;则步骤220针对关键测试信息将第一文件和第二文件进行对比,得到第二文件相对于第一文件关于关键测试信息已减少的内容,可以包括:将所述第一文件中各节点和所述第二文件中各节点进行对比,获取同时存在于所述第一文件和所述第二文件的节点,并将获取到的节点作为未下掉节点;将所述未下掉节点在所述第一文件中具有的变量与所述未下掉节点在所述第二文件中具有的变量进行对比,获取存在所述第一文件中且不存在所述第二文件中的变量,并将获取到的变量作为所述未下掉节点的下掉变量。

简单来说,就是先将第一文件和第二文件中各个节点进行对比,找到同时在第一文件和第二文件中都存在的节点,进一步的,对比该节点在第一文件中的变量和该节点在第二文件中的变量,将存在第一文件但是不存在第二文件的变量作为已下掉的变量。

举例来说,假设在本申请实施例中,第一文件可以如表2-1所示:

表2-1

第二文件可以如表2-2所示:

表2-2

一般情况下,将所述第一文件和所述第二文件进行对比,得到的已减少内容如表2-3所示:

表2-3

步骤230,将已减少内容和关于关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。

在本申请实施例中,所述测试报告可以为表格形式或其他格式文件。关于关键测试信息的预规定减少内容(在本文中也称为目标内容,或者,要求减少的内容)可以为由需求方提供的原始信息,且目标内容可按约定格式提供。具体地,关于关键测试信息的预规定减少内容所在的文件可以与所述已减少内容所在的文件采用同一文件格式。可以通过数据表格导出等方式获取关于关键测试信息的预规定减少内容,也可以由测试人员直接输入电子设备自动生成关于关键测试信息的预规定减少内容。

在本申请实施例中的测试报告可包括目标删除结果和异常删除结果中任意一项或多项;所述预规定减少内容包括要求下掉的节点和要求下掉的变量中任意一个或多种;其中,所述目标删除结果指示:要求下掉的节点的删除结果和要求下掉的变量的删除结果中任意一种或多种;所述异常删除结果包括被删除的未要求下掉节点和被删除的未要求下掉的变量中任意一种或多种。异常删除结果可以简单理解为下错误的节点和下错误的变量中任意一个或多个。在本申请实施例中,所述测试报告可以为表格形式或其他数据格式文件。

本申请实施例,会将已减少内容再与最终的目标内容进行比对,自动生成测试报告。如此,测试人员只需要关注测试结果,对执行失败的反馈开发解决,开发人员修复后,再对修复后的报文与目标报文执行对比即可。相比之下,降低了人工对比易出错的问题,如果误下变量,未核查出来,将对决策的结果带来影响。

其中,如果已减少内容与要求下掉的内容相同,则要求下掉的内容在目标删除结果中标记为已删除,要求下掉的内容不存在于已减少内容中,则要求下掉的内容在目标删除结果中不会被标记为已删除。如果已减少内容不存在于要求下掉的内容中,则将已减少内容输出到异常删除结果中。

具体实现中,所述已减少内容包括已下掉的节点和已下掉的变量。步骤230中根据比对结果生成测试报告,可包括:为所述要求下掉的节点中属于所述已下掉的节点的节点添加已删除标记,以及为所述要求下掉的变量中属于所述已下掉的变量的变量添加已删除标记;为所述要求下掉的节点中不属于所述已下掉的节点的节点添加未删除标记,以及为所述要求下掉的变量中不属于所述已下掉的变量的变量添加未删除标记;根据所述要求下掉的节点中各个节点已添加的标记生成所述目标删除结果。

所述已减少内容包括已下掉的节点和已下掉的变量。步骤230中根据比对结果生成测试报告,可包括:将存在于所述已下掉的节点中但不存在于所述要求下掉的节点中的节点,确定为被删除的未要求下掉的节点,以及将存在于所述已下掉的变量中但不存在于所述要求下掉的变量中的变量,确定为被删除的未要求下掉的变量;根据被删除的未要求下掉的节点和所述被删除的未要求下掉的变量生成异常删除结果。

为方便理解,下面举例进行说明。假设删除标记可以标识为“已删除”,未删除标记可以是空白的,目标删除结果和异常删除结果可分别如表2-4和表2-5所示:

表2-4

表2-5

在本申请实施例中,通过分别记录所述目标删除结果与所述异常删除结果,可以得到更加详细的测试报告,进而后续可基于此详细的测试报告辅助开发人员工作,提高后续工作的便捷性。同时,将所述目标删除结果和所述异常删除结果分开记录,无需人工参与整理核对,在保证准确性的同时提高测试效率,方便开发人员根据测试报告进行后续工作。

在本申请实施例中,获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;确定关键测试信息,并针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容;将所述已减少内容和关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。由于测试目的就是为了检测已减少的内容是否符合要求,通过将所述第一文件和所述第二文件进行对比,只获取第二文件相对于第一文件已减少的内容,而无需获取第二文件相对于所述第一文件已增加的内容,这样避免由于获取对测试无用的内容而浪费更多资源,并且获取到的已减少内容是针对关键测试信息来说的,如此可以保证获取到的已减少内容一定是测试需要的,避免获取测试到无用信息而影响测试进度和测试效率。本申请获取已减少内容和生成测试报告均无需再依赖人工,大大提高了效率,解决了相关技术这种依赖人工参与的方式往往效率较低的问题。同时,避免了人力主观因素的干扰,也提高了测试结果的准确性。

基于图2所示测试方法的描述,步骤220中已减少内容包括已下掉的节点,基于此,步骤220的一种可实施方式包括:将第一文件中各节点和第二文件中各节点进行对比,获取存在于第一文件、不存在于第二文件中的节点,并将获取到的节点作为已下掉的节点。具体实现中,将所述第一文件中各节点和所述第二文件中各节点进行对比,获取存在于所述第一文件中、不存在于所述第二文件中的节点,并将获取到的节点作为已下掉的节点可包括如图3所示的各个步骤:

步骤310,将第一文件的各节点中未遍历的节点作为当前遍历节点,并将当前遍历节点与第二文件的各个节点中进行匹配处理。

步骤320,若根据匹配处理的结果确定当前遍历节点存在于第一文件中,且存在于第二文件中,则返回执行将第一文件的各节点中未遍历的节点作为当前遍历节点的步骤。

步骤330,若根据匹配处理的结果确定当前遍历节点存在于第一文件中、不存在于第二文件中,则将当前遍历节点作为一个已下掉的节点。

基于图2和图3对测试方法描述,本申请实施例还提供了另一种测试方法的流程示意图,如图4所示,图4的实施例具体可包括如下流程:

首先载入待对比文件,即第一文件和第二文件,然后工具先解析第一文件,获取第一文件的第一个节点及其变量,然后用节点遍历下第二文件,检查第二文件中是否存在匹配节点,即与第一文件中的第一个节点相同的节点。

如果未找到,表示此节点已被删除,记录此删除节点,然后获取第一文件的下一个节点及其变量。

如果找到,则获取第二文件此节点的所有变量。再依次获取用第一文件此节点的变量在获取的第二文件的节点变量中遍历查找,直到第一文件当前节点下的变量全部查找完成,查找过程中记录没找到的节点变量。

重复循环前两个步骤,直到将第一文件中的所有节点及变量均对应在第二文件中查找对比完成。得到第一文件比第二文件多的节点或节点变量。

对比完第一文件和第二文件的所有节点和变量之后,获取到对比结果,也即已减少内容,再将对比结果与目标内容进行对比。其中,目标内容可存在于第三文件中。第三文件的节点和变量的列格式可以为“节点.变量”。如果对比结果(第一文件比第二文件多的节点或节点变量,格式可以是“节点.变量”),在第三文件中找到,则表示目标内容的结果值为已删除。如果对比结果在第三文件中未找到,则表示异常删除节点及变量。举例来说,假设将第一文件和第二文件进行对比,得到已减少内容可以表示为如下表3-1所示:

表3-1

预规定减少的内容可以表示为表3-2所示:

表3-2

将表3-1和表3-2对比可以知道,节点1是要求下掉的节点,实际上节点1确实已经被删除,节点1的变量4以及节点3的变量11都是要求下掉的节点,在已减少内容中这些节点的量确实已经删除,所以可以得到目标删除结果,如下表3-3所示:

表3-3

基于表3-1和表3-2发现,节点1的变量3不属于要求下掉的变量,但是已经被下掉,这属于错误下掉的变量,所以生成异常删除结果可以如表3-4所示:

表3-4

通过上面列举的各种实施例可知,本申请实施例提供的测试方法可具有如下优势:

其一,仅做单向对比,仅比较变更后文件比变更前少的内容,忽略变更后文件增加的部分(例如,新接入变量)。

举例而言,本次需求下xx模型节点的变量2,新接入了变量3、4(注意本次验证的下变量,新增变量不在本次测试验证讨论范围)。

执行文件1(下变量前):

执行文件2(下变量后):

相关技术需要人工比较xx模型.变量2在执行文件2中不存在,说明已经下掉,符合本次需求预期,判断成功已下掉的变量。本申请实施例提供的测试方法自动比较的结论与人工比较结论一致。

另一些相关技术比较xx模型.变量2异常,与预期一致,同时也会标记xx模型.变量3、xx模型.变量4异常,与预期不一致,产生错误结论。

其二,本申请实施例仅比较节点、变量的差异,忽略值的差异。相比之下,相关技术的对比精细度高,不会忽略值的差异等情况,同时可能需要人工将对比差异数据进行筛选。

例如,执行文件1:

执行文件2:

相关技术需要人工比较“xx模型.执行时间”变量存在,判断文件一致。本申请实施例中,比较“xx模型.执行时间”变量存在,判断文件一致。

另一些相关技术,比较“xx模型.执行时间”变量存在,但值不一致,判断文件不一致,认为执行时间变量异常,与实际预期不一致,产生错误结论。

其三,本申请实施例,会将差异内容再与最终的目标内容进行比对,自动生成测试报告。如此,测试人员只需要关注测试结果,对执行失败的反馈开发解决,开发人员修复后,再对修复后的报文与目标报文执行对比即可。相比之下,降低了人工对比易出错的问题,如果误下变量,未核查出来,将对决策的结果带来影响。

其中,测试报告报告本次未下调的节点变量,下错误的节点变量。具体地,可以是变更前文件对比变更后文件,多出来的差异节点变量与目标节点变量对比。

图5是本申请实施例提供的一种测试装置的结构框图。参照图5,本申请实施例提供的测试装置500包括:

获取模块510,用于获取第一文件和第二文件,第二文件为将第一文件的内容进行变更后得到的文件;

对比模块520,用于确定关键测试信息,并针对关键测试信息将第一文件和第二文件进行对比,得到第二文件相对于第一文件关于关键测试信息的已减少内容;以及将已减少内容和关于关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。

在本申请实施例中,获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;确定关键测试信息,并针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容;将所述已减少内容和关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。如此,通过将所述第一文件和所述第二文件进行对比,在确定关键测试信息后,只获取所述第二文件相对于所述第一文件已减少的内容,而无需获取所述第二文件相对于所述第一文件已增加的内容,这样在一些测试场景(例如金融信贷领域的测试场景)下,可直接得到关于所述关键测试信息的已减少的内容,而无需依赖人工从差异内容中再筛选出关于所述关键测试信息的已减少的内容,大大提高了效率,解决了相关技术这种依赖人工参与的方式往往效率较低的问题。同时,在得到已减少的内容之后,通过将已减少的内容和预规定减少内容进行比对,得到测试报告,而无需人工将已减少的内容和预规定减少内容进行比对,又进一步提高了效率。此外,整个自动化测试的过程中,由于没有人工参与,避免了人力主观因素的干扰,在提高了效率的同时,也提高了测试结果的准确性。

在本申请的一个实施例中,所述差异内容为已下掉的节点和/或已下掉的变量,所述目标内容指示要求下掉的节点和/或要求下掉的变量。

在本申请的一个实施例中,所述第一文件和所述第二文件中均存在节点,所述关键测试信息包括对节点是否下掉的测试指示;所述已减少内容包括至少一个已下掉的节点;在所述针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容的过程中,所述对比模块520具体用于:

将所述第一文件中各节点和所述第二文件中各节点进行对比,获取存在于所述第一文件中、不存在于所述第二文件中的节点,并将获取到的节点作为已下掉的节点。

在本申请的一个实施例中,在所述将所述第一文件中各节点和所述第二文件中各节点进行对比,获取存在于所述第一文件中、不存在于所述第二文件中的节点,并将获取到的节点作为已下掉的节点的过程中,所述对比模块520具体用于:

将所述第一文件的各节点中未遍历的节点作为当前遍历节点,并将当前遍历节点与所述第二文件的各个节点中进行匹配处理;

若根据匹配处理的结果确定当前遍历节点存在于所述第一文件中,且存在于所述第二文件中,则返回执行将所述第一文件的各节点中未遍历的节点作为当前遍历节点的步骤;

若根据匹配处理的结果确定当前遍历节点存在于所述第一文件中、不存在于所述第二文件中,则将所述当前遍历节点作为一个下掉节点已下掉的节点。

在本申请的一个实施例中,所述第一文件和所述第二文件中均存在节点,且所述第一文件中存在具有变量的节点,所述关键测试信息包括对节点的变量是否下掉的测试指示;所述已减少内容包括至少一个节点的至少一个变量下掉;在所述针对所述关键测试信息将所述第一文件和所述第二文件进行对比,得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容的过程中,所述对比模块520具体用于:

将所述第一文件中各节点和所述第二文件中各节点进行对比,获取同时存在于所述第一文件和所述第二文件的节点,并将获取到的节点作为未下掉节点;

将所述未下掉节点在所述第一文件中具有的变量与所述未下掉节点在所述第二文件中具有的变量进行对比,获取存在所述第一文件中且不存在所述第二文件中的变量,并将获取到的变量作为所述未下掉节点的下掉变量。

在本申请的一个实施例中,在所述得到所述第二文件相对于所述第一文件关于所述关键测试信息的已减少内容之后,所述测试装置还包括:生成模块。所述生成模块,用于生成差异数据列表,所述差异数据列表中记录了所述已减少内容。在所述将所述已减少内容和关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告的过程中,所述对比模块520具体用于:将记录在所述差异数据列表中的所述已减少内容内容与关于所述关键测试信息的预规定减少内容进行比对,并根据比对结果生成测试报告。

在本申请的一个实施例中,所述测试报告包括目标删除结果和异常删除结果中任意一项或多项;所述预规定减少内容包括要求下掉的节点和要求下掉的变量中任意一个或多种;其中,所述目标删除结果指示:要求下掉的节点的删除结果和要求下掉的变量的删除结果中任意一种或多种;所述异常删除结果包括被删除的未要求下掉节点和被删除的未要求下掉的变量中任意一种或多种。

在本申请的一个实施例中,在所述已减少内容包括已下掉的节点和已下掉的变量,所述根据比对结果生成测试报告的过程中,所述对比模块520具体用于:

为所述要求下掉的节点中属于所述已下掉的节点的节点添加已删除标记,以及为所述要求下掉的变量中属于所述已下掉的变量的变量添加已删除标记;

为所述要求下掉的节点中不属于所述已下掉的节点的节点添加未删除标记,以及为所述要求下掉的变量中不属于所述已下掉的变量的变量添加未删除标记;

根据所述要求下掉的节点中各个节点已添加的标记生成所述目标删除结果。

在本申请的一个实施例中,在所述已减少内容包括已下掉的节点和已下掉的变量,所述根据比对结果生成测试报告的过程中,所述对比模块520具体用于:

将存在于所述已下掉的节点中但不存在于所述要求下掉的节点中的节点,确定为被删除的未要求下掉的节点,以及将存在于所述已下掉的变量中但不存在于所述要求下掉的变量中的变量,确定为被删除的未要求下掉的变量;

根据被删除的未要求下掉的节点和所述被删除的未要求下掉的变量生成异常删除结果。

此外,如图6所示,本申请实施例还提供一种电子设备600,所述电子设备可以为各种类型的计算机等。所述电子设备600包括:处理器610和存储器620,存储器620上存储程序或指令,所述程序或指令被所述处理器610执行时实现上文所描述的任一种方法的步骤。举例而言,所述程序被所述处理器610执行时可实现如下过程:获取第一文件和第二文件,所述第二文件为将所述第一文件的内容进行变更后得到的文件;将所述第一文件和所述第二文件进行对比,得到所述第一文件和所述第二文件之间的差异内容,所述差异内容为所述第二文件相对于所述第一文件已减少的内容;将所述差异内容和目标内容进行比对,得到测试报告,所述目标内容为指示要求减少的内容。如此,通过将所述第一文件和所述第二文件进行对比,达到所述第二文件与所述第一文件单向对比的目的,从而可以得到所述第二文件相较于所述第一文件所减少的内容,可以在一定程度上解决现有技术中将增加内容一起进行差异化标识共同输出带来的问题。同时,将所述差异内容与所述目标内容进行对比并得到测试报告,可以得到二次核对的目的,提高自动化测试的准确率。

本申请实施例还提供一种可读存储介质,所述可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

其中,所述处理器为上述实施例中所述的电子设备中的处理器。所述可读存储介质,包括计算机可读存储介质,如计算机只读存储器ROM、随机存取存储器RAM、磁碟或者光盘等。

本申请实施例另提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

技术分类

06120116516729