CN115904970A - 回归测试方法及设备 - Google Patents

回归测试方法及设备 Download PDF

Info

Publication number
CN115904970A
CN115904970A CN202211445790.5A CN202211445790A CN115904970A CN 115904970 A CN115904970 A CN 115904970A CN 202211445790 A CN202211445790 A CN 202211445790A CN 115904970 A CN115904970 A CN 115904970A
Authority
CN
China
Prior art keywords
user
item
transaction
frequent
user transaction
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
CN202211445790.5A
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.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
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 Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202211445790.5A priority Critical patent/CN115904970A/zh
Publication of CN115904970A publication Critical patent/CN115904970A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种回归测试方法及设备。该方法包括:获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项;预设对应关系为代码片段与用户交易项之间的对应关系,用户交易项表征用户交易行为;根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,预设强规则信息中包括至少一个置信度大于预设值的频繁项集,频繁项集中包括多个用户交易项,频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的;根据目标测试交易项,获取回归测试用例;根据回归测试用例对交易平台程序进行回归测试,获取测试结果。本申请的方法,提高了测试结果的准确性和测试效率。

Description

回归测试方法及设备
技术领域
本申请涉及计算机技术领域,尤其涉及一种回归测试方法及设备。
背景技术
回归测试是指修改了旧代码后,为确保修改没有引入新的错误或导致其他代码产生错误,而对修改后的软件进行的测试。回归测试是软件生命周期中的一个重要组成部分,在软件开发的各个阶段都需要进行多次回归测试,以保证软件的正常运行。
由于修改的代码片段可能会影响到其他代码片段的正常运行,因此,如果仅将修改的代码片段对应的用户交易项纳入回归测试的范围,极容易出现整个软件无法正常运行的情况。而若进行全功能的测试,又需要投入大量的人力、物力和财力,不仅测试效率低,测试成本也过高。
因此,在银行的交易平台的回归测试中,测试人员先根据经验确定回归测试范围,也就是确定回归测试的目标测试交易项,再获取回归测试用例,然后才进行回归测试,这种方式在很大程度上提高了回归测试效率。但是,根据经验确定的目标测试交易项,不能精准涵盖修改的代码片段的影响范围,存在遗漏关键交易项的可能,而且也未与实际应用关联,可靠性不够高。因而,基于此获取到的测试用例自然也不够准确,致使回归测试的结果也不准确,可能影响到整个银行交易平台的运行质量。
因此,银行交易平台的回归测试的方案有待进一步优化。
发明内容
本申请提供一种回归测试方法及设备,用以优化回归测试方案。
一方面,本申请提供一种回归测试方法,包括:
获取修改的代码片段,并基于预设对应关系,确定所述修改的代码片段所对应的用户交易项;所述预设对应关系为代码片段与用户交易项之间的对应关系,所述用户交易项表征用户交易行为;所述代码片段为交易平台程序中的代码片段;
根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,所述预设强规则信息中包括至少一个置信度大于预设值的频繁项集,所述频繁项集中包括多个用户交易项,所述频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的;
根据所述目标测试交易项,获取回归测试用例;
根据所述回归测试用例对所述交易平台程序进行回归测试,获取测试结果。
可选地,在根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项之前,还包括:
基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
可选地,所述基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息,包括:
对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,其中,每个交易项集中包括一个或多个用户交易项;
基于频繁模式树算法对所述样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
可选地,所述对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,包括:
根据用户标识和日期,对用户办理业务的行为数据进行分割处理,得到多个子数据,其中,每个子数据表征每个用户在一天内办理业务的行为数据;
提取每个子数据,获取每个用户的所有用户交易项,确定每个用户的所有用户交易项的集合为每个用户的交易项集;
确定所有用户的交易项集,为样本数据。
可选地,所述基于频繁模式树算法对所述样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息,包括:
基于频繁模式树算法的数据结构,处理所述样本数据,得到样本数据的项头表、频繁模式树、以及节点链表;所述项头表包括所述样本数据中的出现次数大于阈值的用户交易项、以及对应的出现次数;所述频繁模式树由所述项头表映射得到;所述节点链表包括项头表中的用户交易项在频繁模式树中的位置信息;
根据所述项头表、频繁模式树、以及节点链表,获取所述项头表中每一用户交易项的条件模式基,所述条件模式基表征用户交易项与其他的用户交易项之间的关系,并根据每一用户交易项的条件模式基,确定每一用户交易项的频繁项集,每个频繁项集中包括多个用户交易项;
计算所有频繁项集的置信度,确定置信度大于预设值的频繁项集,为预设强规则信息。
可选地,所述根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项,包括:
确定所述预设强规则信息中包括所述修改的代码片段所对应的用户交易项的频繁项集中的所有用户交易项,为目标测试交易项;
或者,确定预设强规则信息、所述修改的代码片段所对应的用户交易项两者的并集,确定所述并集中的所有用户交易项,为目标测试交易项。
可选地,根据所述目标测试交易项,获取回归测试用例,包括:
获取用户针对所述目标测试交易项所输入的代码编写信息,并根据所述代码编写信息生成所述回归测试用例。
另一方面,本申请提供一种回归测试装置,包括:
交易确定单元,用于获取修改的代码片段,并基于预设对应关系,确定所述修改的代码片段所对应的用户交易项;所述预设对应关系为代码片段与用户交易项之间的对应关系,所述用户交易项表征用户交易行为;所述代码片段为交易平台程序中的代码片段;
范围确定单元,用于根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,所述预设强规则信息中包括至少一个置信度大于预设值的频繁项集,所述频繁项集中包括多个用户交易项,所述频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的;
用例确定单元,用于根据所述目标测试交易项,获取回归测试用例;
测试单元,用于根据所述回归测试用例对所述交易平台程序进行回归测试,获取测试结果。
可选地,所述回归测试装置还包括数据单元;
所述数据单元,用于在根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项之前,基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
可选地,所述数据单元包括预处理模块和处理模块;
所述预处理模块,用于对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,其中,每个交易项集中包括一个或多个用户交易项;
所述处理模块,用于基于频繁模式树算法对所述样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
可选地,所述预处理模块包括分割模块、提取模块、确定模块;
所述分割模块,用于根据用户标识和日期,对用户办理业务的行为数据进行分割处理,得到多个子数据,其中,每个子数据表征每个用户在一天内办理业务的行为数据;
所述提取模块,用于提取每个子数据,获取每个用户的所有用户交易项,确定每个用户的所有用户交易项的集合为每个用户的交易项集;
所述确定模块,用于确定所有用户的交易项集,为样本数据。
可选地,所述处理模块包括建立模块、挖掘模块、选择模块;
所述建立模块,用于基于频繁模式树算法的数据结构,处理所述样本数据,得到样本数据的项头表、频繁模式树、以及节点链表;所述项头表包括所述样本数据中的出现次数大于阈值的用户交易项、以及对应的出现次数;所述频繁模式树由所述项头表映射得到;所述节点链表包括项头表中的用户交易项在频繁模式树中的位置信息;
所述挖掘模块,用于根据所述项头表、频繁模式树、以及节点链表,获取所述项头表中每一用户交易项的条件模式基,所述条件模式基表征用户交易项与其他的用户交易项之间的关系,并根据每一用户交易项的条件模式基,确定每一用户交易项的频繁项集,每个频繁项集中包括多个用户交易项;
所述选择模块,用于计算所有频繁项集的置信度,确定置信度大于预设值的频繁项集,为预设强规则信息。
可选地,所述范围确定单元包括第一范围确定模块;
所述第一范围确定模块,用于确定所述预设强规则信息中包括所述修改的代码片段所对应的用户交易项的频繁项集中的所有用户交易项,为目标测试交易项;或者,确定预设强规则信息、所述修改的代码片段所对应的用户交易项两者的并集,确定所述并集中的所有用户交易项,为目标测试交易项。
可选地,所述用例确定单元包括用例生成模块;
所述用例生成模块,用于获取用户针对所述目标测试交易项所输入的代码编写信息,并根据所述代码编写信息生成所述回归测试用例。
另一方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如上所述的任一项方法。
另一方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的任一项方法。
另一方面,本申请提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如上所述的任一项方法。
本申请提供的回归测试方法及设备,通过获取修改的代码片段,并基于预设对应关系,确定所述修改的代码片段所对应的用户交易项;所述预设对应关系为代码片段与用户交易项之间的对应关系,所述用户交易项表征用户交易行为;所述代码片段为交易平台程序中的代码片段;根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,所述预设强规则信息中包括至少一个置信度大于预设值的频繁项集,所述频繁项集中包括多个用户交易项,所述频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的;根据所述目标测试交易项,获取回归测试用例;根据所述回归测试用例对所述交易平台程序进行回归测试,获取测试结果。由于以用户办理业务的用户行为数据作为数据支撑,将回归测试与用户真实的业务场景相结合,更符合实际应用;另外,基于频繁模式树算法对数据进行处理,更具科学性和指导性,不仅避免了由测试人员的经验确定,可能会遗漏关联交易的可能,减轻了测试人员的工作负担,也提高了测试结果的准确性和测试效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例提供的一种回归测试方法的流程示意图;
图2为本申请实施例提供的又一种回归测试方法的流程示意图;
图3为本申请一示例得到的项头表及数据集的示意图;
图4为本申请一示例性基于频繁模式树的数据结构示意图;
图5为本申请又一示例性基于频繁模式树的数据结构示意图;
图6为本申请一示例根据样本数据得到的基于频繁模式树的数据结构示意图;
图7为本申请一示例性获取用户交易项F节点的条件模式基的示意图;
图8为本申请一示例性获取用户交易项D节点的条件模式基的示意图;
图9为本申请实施例提供的一种回归测试装置的结构示意图;
图10为本申请实施例提供的一种回归测试装置的结构示意图;
图11为本申请实施例提供的电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
回归测试作为软件生命周期的一个重要组成部分,软件开发的各个阶段都会进行多次回归测试,以保证软件的正常运行。针对相对简单的软件产品,一般通过全功能的测试来保证测试结果的准确性。但是,随着计算机技术的发展,软件产品也越来越复杂,在快速迭代开发中,回归测试越来越频繁,回归测试的工作量也越来越大,全功能的测试明显已经不适用于目前的开发状态和测试需求。
一个示例中,在针对银行的交易平台程序进行回归测试时,测试人员在进行回归测试之前,先根据经验确定回归测试范围,也即先确定目标测试交易项,再基于目标测试交易项获取回归测试用例,最后再进行回归测试,提高了回归测试效率。
但是,根据经验确定的目标测试交易项,不能精准涵盖修改的代码片段的影响范围,存在遗漏关键交易项的可能,而且也未与实际应用关联,可靠性不够高,使得获取的测试用例也不够准确,致使回归测试结果的准确度不高,也即回归测试方案有待进一步优化。
为了解决上述技术问题,本申请提出一种回归测试方法及设备,通过先确定修改的代码片段对应的用户交易项,然后根据与修改的代码片段对应的用户交易项、以及预设强规则信息,确定目标测试交易项,再根据确定的目标测试交易项,获取回归测试用例,以完成回归测试。其中,预设强规则信息是置信度大于阈值的频繁项集,而频繁项集包括多个用户交易项,且频繁项集是基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的,因此,准确度和可靠性都较高,进而根据与修改的代码片段对应的用户交易项、以及预设强规则信息,确定的目标测试交易项的准确度和可靠性也高。通过提高目标测试交易项的准确度和可靠性的方式,提高了回归测试结果的准确性和可靠性。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图1为本申请实施例提供的一种回归测试方法的流程示意图。本实施例的执行主体可以为回归测试装置,还可以为集成了回归测试装置的测试系统,测试系统可以集成在终端设备上,终端设备可以是电脑、手机、平板等。下述以执行主体为回归测试装置为例进行详细说明。
如图1所示,本实施例提供的回归测试方法包括:
S101、获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项;预设对应关系为代码片段与用户交易项之间的对应关系,用户交易项表征用户交易行为;代码片段为交易平台程序中的代码片段。
示例性地,在针对交易平台程序的回归测试装置中,预先设置有代码片段与用户交易项之间的对应关系。其中,用户交易项表征用户交易行为,用户交易行为可以是用户在银行办理的交易业务类型,具体可以为存款、取款、转账等多种交易行为,本申请不做限制。而代码片段为交易平台程序中的代码片段,代码片段是组成交易平台程序的一部分,基于完整的交易平台程序可以完成程序支持的所有用户交易行为。
其中,每个用户交易项对应至少一个代码片段,同一代码片段可能对应多个不同的用户交易项,具体与代码设置相关,本申请不做限制。当回归测试装置获取到回归测试的修改的代码片段后,可以根据预设对应关系,确定与修改的代码片段所对应的用户交易项。
示例性地,预设对应关系可以设置为表格的形式。例如,表1为用户交易项与代码片段的预设对应关系。
表1
用户交易项 代码片段
A x,y,a,b
B m,n
C k,l
D a,x
E z,k
如表1所示,与用户交易项A对应的代码片段包括x,y,a,b;与用户交易项B对应的代码片段包括m,n;与用户交易项C对应的代码片段包括k,l;与用户交易项D对应的代码片段包括a,x;与用户交易项E对应的代码片段包括z,k。其中,代码片段x分别对应有用户交易项A和用户交易项D,代码片段k也分别对应有用户交易项C和用户交易项E,等等;上述的预设对应关系仅作为示例,而不应视为对其的限制。
示例性地,若预设对应关系设置为表1所示的表格形式,当回归测试装置获取到修改的代码片段为x时,就可以根据表1的预设对应关系,确定代码片段x对应的用户交易项包括用户交易项A和用户交易项D。
S102、根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,预设强规则信息中包括至少一个置信度大于预设值的频繁项集,频繁项集中包括多个用户交易项,频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的。
示例性地,关联规则是数据挖掘领域中常用的一类算法,主要用于发现隐藏在大型数据集中有意义的联系。在关联规则中,通过支持度和置信度来度量关联规则。支持度是指关联规则中几个关联的数据在数据集中出现的次数占总数据集的比重;而置信度是一个数据出现后,另一个数据出现的概率,也即条件概率。当关联规则的置信度大于预先定义好的最小置信度时,就可以称它为强关联规则。因此,通常通过强关联规则了解各项之间的隐藏关系。
本申请中,预设强规则信息就是指一个或多个满足条件的具有强关联关系的用户交易项的集合。其中,具有强关联关系的用户交易项的集合也就是置信度大于预设值的频繁项集。也即,预设强规则信息中包括至少一个置信度大于预设值的频繁项集,频繁项集中包括多个用户交易项。若频繁项集的置信度大于预设值,即表明该频繁项集中的多个用户交易项具有强关联关系。其中,本申请的频繁项集是预先基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的。
频繁模式树算法(Frequent Pattern-growth,简称FP-growth)使用了一种紧缩的数据结构来存储查找频繁项集所需要的全部信息,它是一种高效且科学的频繁项挖掘方法。本申请中,频繁项集就是预先基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的,一方面,该算法对用户办理业务的用户行为数据进行处理,由真实的业务数据做支撑,可靠性更高;另一方面,利用频繁模式树算法对其进行处理,具有科学性和指导性,得到的数据结构更准确。
其中,本申请对如何获取预设强规则信息不做具体限制。示例性地,预设强规则信息可以由测试人员或其他装置,提前基于频繁模式树算法对用户办理业务的用户行为数据进行处理,得到频繁项集后,再获取频繁项集的置信度,选择知心度大于预设值的频繁项集为预设强规则信息,然后再设置在回归测试装置中,也可以由回归测试装置中的对应功能模块提前获取。其中,关于置信度的预设值的大小,可以根据需求设置。
示例性地,回归测试装置确定修改的代码片段所对应的用户交易项后,结合预设强规则信息,可以确定目标测试交易项,也即确定回归测试范围。
本申请对如何根据预设强规则信息、以及修改的代码片段所对应的用户交易项,确定目标测试交易项,不做限制。
一个示例中,根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项,包括:
确定预设强规则信息中包括修改的代码片段所对应的用户交易项的频繁项集中的所有用户交易项,为目标测试交易项;或者,确定预设强规则信息、修改的代码片段所对应的用户交易项两者的并集,确定并集中的所有用户交易项,为目标测试交易项。
示例性地,由于预设强规则信息中包括至少一个置信度大于预设值的频繁项集,而每个频繁项集中包括多个用户交易项。因此,回归测试装置可以先确定预设强规则信息中,包括修改的代码片段所对应的用户交易项的频繁项集,再确定得到的频繁项集中的所有用户交易项为目标测试交易项。或者,回归测试装置直接获取预设强规则信息、以及修改的代码片段所对应的用户交易项,两者的并集,确定并集中的所有用户交易项都为目标测试交易项,也即,确定预设强规则信息中所有频繁项集的所有用户交易项、以及修改的代码片段所对应的用户交易项,都为目标测试交易项。
自此,确定的目标测试交易项都是具有强关联关系的,这些目标测试交易项在用户进行实际交易时极有可能同时发生,将其都纳入回归测试的范围中,得到的回归测试结果由用户的真实业务行为做支撑,更具科学性和指导性,可以提高回归测试结果的准确性。
S103、根据目标测试交易项,获取回归测试用例。
示例性地,回归测试装置获取目标测试交易项后,就可以根据目标测试交易项,得到回归测试用例,以便后续根据回归测试用例进行回归测试。
其中,本申请对回归测试装置如何获取回归测试用例不做限制。示例性地,可以由测试人员输入,测试人员先根据目标测试交易项,编写测试用例,然后将得到的测试用例输入回归测试装置中,以使回归测试装置获取回归测试用例。
一个示例中,回归测试装置具有生成回归测试用例的功能,可以根据目标测试交易项,直接生成回归测试用例。示例性地,根据目标测试交易项,获取回归测试用例,可以包括:
获取用户针对目标测试交易项所输入的代码编写信息,并根据代码编写信息生成回归测试用例。
示例性地,回归测试装置获取用户针对目标测试交易项所输入的代码编写信息,可以由测试人员写入,然后就根据代码编写信息生成回归测试用例,实现生成回归测试用例的自动化,以便提高回归测试效率。
S104、根据回归测试用例对交易平台程序进行回归测试,获取测试结果。
示例性地,回归测试装置根据目标测试交易项得到的回归测试案例,对修改后的银行的交易平台程序进行回归测试,获取回归测试结果。
示例性地,将回归测试用例的测试数据输入银行的交易平台程序中,获取程序运行结果,将运行结果与回归测试用例中预先设置的结果进行比较分析,得到测试结果。若运行结果与回归测试用例中预先设置的结果相同,即可认为修改的代码片段没有引入新的代码错误,修改后的交易平台程序无误。
本申请实施例提供的回归测试方法,通过获取修改的代码片段,并基于预设对应关系,确定与修改的代码片段所对应的用户交易项;然后根据预设强规则信息、以及与修改的代码片段所对应的用户交易项,确定目标测试交易项;再根据目标测试交易项,获取回归测试用例;最后根据回归测试用例对交易平台程序进行回归测试,获取测试结果。其中,由于预设强规则信息包括至少一个置信度大于预设值的频繁项集,且频繁项集是基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的。
一方面,这种方式以用户办理业务的用户行为数据作为数据支撑,将回归测试与用户真实的业务场景相结合,更符合实际应用;另一方面,基于频繁模式树算法对数据进行处理,更具科学性和指导性,不仅避免了由测试人员的经验确定,可能会遗漏关联交易的可能,减轻了测试人员的工作负担,也提高了测试结果的准确性和测试效率。
图2为本申请实施例提供的又一种回归测试方法的流程示意图。本实施例的执行主体可以为回归测试装置,还可以为集成了回归测试装置的测试系统,测试系统可以集成在终端设备上,终端设备可以是电脑、手机、平板等。下述以执行主体为回归测试装置为例进行详细说明。
如图2所示,本实施例提供的回归测试方法包括:
S201、获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项;预设对应关系为代码片段与用户交易项之间的对应关系,用户交易项表征用户交易行为;代码片段为交易平台程序中的代码片段。
其中,步骤S201与步骤S101的具体实现类同,此处不再赘述。
回归测试装置在获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项之后,需要进一步根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项。其中,预设强规则信息可以是预先设置的,也可以是回归测试装置获取的。因此,在一些实施例中,在根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项之前,还包括:获取预设强规则信息。其中,获取预设强规则信息可以为:步骤S202。
S202、基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
示例性地,回归测试装置根据频繁模式树算法对用户的行为数据进行处理,然后获取其中置信度大于预设值的频繁项集,确定其为强规则信息。置信度大于预设值的频繁项集至少有一个,具体数量可以通过调节置信度的大小来调整,本申请不做限制。
其中,基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息,可以包括:步骤S2021和步骤S2022。
S2021、对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,其中,每个交易项集中包括一个或多个用户交易项。
示例性地,用户在银行的交易平台办理各种业务时,银行的交易平台或者后台系统的数据库中会记录相应的用户行为数据,回归测试装置可以预先从银行后台系统的数据库中,获取用户办理业务的行为数据,然后对用户办理业务的行为数据进行预处理,再获取样本数据,样本数据可以包括多个交易项集,每个交易项集中包括一个或多个用户交易项。
其中,在获取用户办理业务的行为数据时,可以以柜员号区分,比如提取一个柜员当天为所有用户办理的所有业务,以使获取的数据更能表征连续办理的业务类型。
示例性地,对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,可以包括步骤S1-步骤S3。
S1、根据用户标识和日期,对用户办理业务的行为数据进行分割处理,得到多个子数据,其中,每个子数据表征每个用户在一天内办理业务的行为数据。
示例性地,回归测试装置获取用户办理业务的行为数据之后,根据用户标识和日期,对用户办理业务的行为数据进行分割处理,得到多个子数据。例如,以每个用户一天内的行为数据进行分割,将每个用户一天内或一次排队号的行为数据做为一个子数据,这样每个子数据中就包括了该用户在这天内或这次办理业务的一系列操作,以便后续根据这一系列操作获取每个用户的交易项集。
S2、提取每个子数据,获取每个用户的所有用户交易项,确定每个用户的所有用户交易项的集合为每个用户的交易项集。
示例性地,由于每个子数据中包括了用户在一天内办理业务的一系列操作,因此,回归测试装置提取每个子数据,就可以得到该用户在这天内的所有用户交易项。其中,用户交易项可以用交易码来识别,根据交易码来确定具体的用户交易项类型。然后,将每个用户的所有用户交易项的集合确定为该用户的交易项集,也即,交易项集中包括每个用户的一个或多个用户交易项。
其中,在确定每个用户的所有用户交易项的集合为每个用户的交易项集时,可以以时间顺序来排列用户交易项,以使每个用户交易项携带时序信息,以便后续进行数据处理。
S3、确定所有用户的交易项集,为样本数据。
示例性地,回归测试装置获取每个用户的交易项集后,将所有用户的交易项集,都作为样本数据,这样,样本数据中就包括了多个用户的交易项集。
示例性地,从银行后台系统的数据库中获取的数据内容多且复杂,本申请中仅需获取每个用户的用户交易项,因此,回归测试装置根据用户标识和日期,对用户办理业务的行为数据进行分割处理后,得到多个子数据,对整体数据进行分割处理,不仅方便后续提取,也方便区分各用户之间的数据,以免数据混乱。
示例性地,以某柜员在某天为10位用户办理了业务为例,从银行的交易平台或者后台系统的数据库中获取原始记录数据后,根据用户标识和日期,对用户办理业务的行为数据进行分割处理,获取每个用户的子数据,得到10组子数据,然后提取每组子数据,获取每个用户的用户交易项,得到10组交易项集。
例如,表2为示例性样本数据列表。
表2
Figure BDA0003950250960000141
如上表2所示,表示根据上述处理数据的方式,得到包括10组交易项集的样本数据。第1组表示用户1在某日办理业务时,依次进行了用户交易项A和用户交易项B;第2组表示用户2在某日办理业务时,依次进行了用户交易项B、用户交易项C和用户交易项D;以此类推,第10组表示用户10在某日办理业务时,依次进行了用户交易项B、用户交易项C和用户交易项E。
S2022、基于频繁模式树算法对样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
示例性地,回归测试装置获取样本数据后,根据频繁模式树算法对样本数据进行处理,依次包括建立项头表、建立频繁模式树、挖掘频繁模式树,以获取多个频繁项集,再确定置信度大于预设值的频繁项集为预设强规则信息。
示例性地,基于频繁模式树算法对样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息,可以包括:步骤S10-S30。
S10、基于频繁模式树算法的数据结构,处理样本数据,得到样本数据的项头表、频繁模式树、以及节点链表;项头表包括样本数据中的出现次数大于阈值的用户交易项、以及对应的出现次数;频繁模式树基于项头表映射得到;节点链表包括项头表中的用户交易项在频繁模式树中的位置信息。
示例性地,频繁模式树算法的数据结构包括三部分,分别是项头表、频繁模式树、以及节点链表。项头表中记录了所有样本数据中,出现次数大于阈值的用户交易项、以及对应的出现次数,并按照次数降序排列,其中,用户交易项的出现次数表征了该用户交易项的支持度,支持度可由每个用户交易项的出现次数除以所有样本数据的总用户交易项数量计算得到。频繁模式树基于项头表映射得到。节点链表表征项头表中的用户交易项在频繁模式树中的位置信息,所有项头表里的每个用户交易项都是一个节点链表的头,它依次指向频繁模式树中该用户交易项出现的位置。
以下对如何处理样本数据,得到样本数据的项头表、频繁模式树、以及节点链表进行介绍。示例性地,表3为又一示例性样本数据列表。以下处理以表3所示样本数据为例。
表3
Figure BDA0003950250960000161
首先,根据表3所示的样本数据建立项头表。
示例性地,回归测试装置获取样本数据后,第一次扫描样本数据,得到所有用户交易项的计数,然后,删除出现次数/支持度低于阈值的用户交易项,将剩下的用户交易项放入项头表中,并按照出现次数/支持度降序排列;然后,第二次扫描样本数据,将每组样本数据中,出现次数/支持度低于阈值的用户交易项删除,并按照出现次数/支持度降序排列,得到处理并重排后的交易项集。其中,出现次数/支持度的阈值可以根据需求设置,本申请不做限制。
示例性地,图3为本申请一示例得到的项头表及数据集的示意图。
如图3所示,本实施例以支持度阈值为20%,样本数据为10组为例。样本数据T1中,表示每一用户的交易行为数据。建立项头表时,首先,进行第一次样本数据扫描,对所有用户交易项进行计数,其中,用户交易项O、I、L、J、P、M、N只出现一次,支持度低于20%,因此删除,它们不会出现在如图3所示的项头表T2中,其余剩下的用户交易项A、C、E、G、B、D、F按照支持度的大小降序排列,得到项头表T2。然后,进行第二次样本数据扫描,对于每个用户交易项集中,剔除支持度低于20%的用户交易项,并按照支持度的重新降序排列每个交易项集,获取处理并重排后的交易项集T3。例如,第一个交易项集ABCEFO中,用户交易项O的支持度低于20%,因此被剔除,只剩下了ABCEF,按照项头表中支持度的顺序排序,变成了ACEBF。其他的交易项集以此类推,得到处理并重排后的交易项集T3。通过两次数据扫描,项头表已经建立,处理并重排后的交易项集也已得到。
然后,回归测试装置根据项头表建立频繁模式树。
示例性地,建立频繁模式树时,逐条读取处理并重排后的交易项集,将所有用户交易项依次插入频繁模式树中,插入时按照排序后的顺序。其中,排序靠前的节点是祖先节点,而靠后的是子孙节点,如果有共用的祖先,则对应的公用祖先节点计数加1。插入后,如果有新节点出现,则项头表对应的节点会通过节点链表链接上新节点。直到所有的数据都插入到频繁模式树后,完成频繁模式树的建立。
示例性地,图4为本申请一示例性基于频繁模式树的数据结构示意图。如图4所示,首先插入处理并重排后的交易项集T3中的第一个交易项集ACEBF。此时频繁模式树还没有节点,因此,交易项集ACEBF是一个独立的路径,所有节点计数都为1,项头表通过节点链表链接上对应的新增节点。据此,得到如图4中T4所示的频繁模式树。
接着插入处理并重排后的交易项集T3中的第二个交易项集ACG。图5为本申请又一示例性基于频繁模式树的数据结构示意图。如图5所示,由于交易项集ACG中的用户交易项和已建立频繁模式树可以有共有的祖先节点A和C,因此,只需要增加一个新节点G,将新节点G的计数记为1,同时将A和C的计数加1变为2。对应的G节点的节点链表也要更新。据此,得到如图5中T5所示的频繁模式树。
以此类推,逐条插入交易项集,最后,得到所有经处理并重排后的交易项集的数据结构。示例性地,图6为本申请一示例根据样本数据得到的基于频繁模式树的数据结构示意图。如图6所示,项头表T2中包括了样本数据中的出现次数大于阈值的所有用户交易项、以及对应的出现次数;而频繁模式树T6基于项头表T2映射得到,频繁模式树T6中的各用户交易项的节点数之和与项头表一致;所有项头表里的每个用户交易项都依次指向频繁模式树T6中该用户交易项出现的位置,构成节点链表。
S20、根据项头表、频繁模式树、以及节点链表,获取项头表中每一用户交易项的条件模式基,条件模式基表征用户交易项与其他的用户交易项之间的关系,并根据每一用户交易项的条件模式基,确定每一用户交易项的频繁项集,每个频繁项集中包括多个用户交易项。
示例性地,回归测试装置得到样本数据的项头表、频繁模式树、以及节点链表之后,从项头表的底部项依次向上挖掘,获取项头表中每一用户交易项的条件模式基。其中,条件模式基表征用户交易项与其他的用户交易项之间的关系。所谓条件模式基是以要挖掘的节点作为叶子节点所对应的频繁模式子树(FP子树)。然后,根据每一用户交易项的条件模式基,也即根据每一用户交易项的频繁模式子树,确定每一用户交易项的频繁项集。
示例性地,图7为本申请一示例性获取用户交易项F节点的条件模式基的示意图。如图7所示,从项头表T2的最下方的用户交易项F节点开始,先获取用户交易项F节点的条件模式基。由于用户交易项F在频繁模式树中只有一个节点,因此候选就只有如图7中N1所示的一条路径,即为用户交易项F的频繁模式子树,对应{A:8,C:8,E:6,B:2,F:2}。然后,将所有的祖先节点计数都设置为叶子节点的计数,即将用户交易项F的频繁模式子树变成{A:2,C:2,E:2,B:2,F:2}。条件模式基可以不写叶子节点,因此,最终用户交易项F的条件模式基如图7中N2所示。
基于用户交易项F的条件模式基,可以得到用户交易项F的所有频繁项集。例如,用户交易项F的频繁二项集为{A:2,F:2},{C:2,F:2},{E:2,F:2},{B:2,F:2}。递归合并二项集,可以得到频繁三项集为{A:2,C:2,F:2},{A:2,E:2,F:2},等等,一直递归下去,可得到用户交易项F的最大频繁项集:频繁5项集为{A:2,C:2,E:2,B:2,F:2}。至此,得到用户交易项F的所有频繁项集。
示例性地,用户交易项F挖掘完后,挖掘用户交易项D的频繁项集。图8为本申请一示例性获取用户交易项D节点的条件模式基的示意图。示例性地,先获取用户交易项D节点的条件模式基,用户交易项D节点有两个叶子节点,因此,首先得到用户交易项D的频繁模式子树如图8中N1所示。将所有的祖先节点计数设置为叶子节点的计数,即变成{A:2,C:2,E:1G:1,D:1,D:1}。此时,用户交易项E节点和用户交易项G节点由于在条件模式基里面的支持度低于阈值,被删除。最终,在去除于阈值低支持度的节点后,用户交易项D的条件模式基为{A:2,C:2},如图8中N2所示。进而,可以得到用户交易项D的频繁二项集为{A:2,D:2},{C:2,D:2}。递归合并二项集,可以得到用户交易项D对应的最大频繁项集:频繁三项集为{A:2,C:2,D:2}。至此,得到用户交易项F的所有频繁项集。
类似的,可以依次得到用户交易项B、用户交易项G、用户交易项E、用户交易项C的条件模式基,其中,A的条件模式基为空,因此可以不用去挖掘,进而可以得到所有用户交易项的所有频繁项集。
S30、计算所有频繁项集的置信度,确定置信度大于预设值的频繁项集,为预设强规则信息。
示例性地,回归测试装置得到所有用户交易项的所有频繁项集后,计算每一频繁项集的置信度,然后将置信度大于预设值的频繁项集确定为预设强规则信息。
示例性地,支持度是几个关联的数据在数据集中出现的次数占总数据集的比重,或者说几个数据关联出现的概率。而置信度体现了一个数据出现后,另一个数据出现的概率,或者说该数据的条件概率。
举例来说,以用户交易项F的频繁二项集为{A:2,F:2}为例,如果要分析关联性的数据A和F,则先计算用户交易项F的频繁二项集{A:2,F:2}对应的支持度。可以通过如下式(1)计算:
Figure BDA0003950250960000191
式(1)中,support(A,F)表征:用户交易项F的频繁二项集的支持度;P(AF)表征:用户交易项A和用户交易项F在整个样本数据中同时出现的概率;number(AF)表征:用户交易项A和用户交易项F同时在整个样本数据中同时出现的次数;number(allSamples)表征:样本数据的总数。
然后,计算用户交易项F的频繁二项集{A:2,F:2}对应的置信度。可以通过如下式(2)计算:
Figure BDA0003950250960000192
式(2)中,confidence(A←F)表征:用户交易项F的频繁二项集的置信度;P(A/F)表征:在整个样本数据中用户交易项F出现时,用户交易项A和F同时出现的概率;P(AF)表征:用户交易项A和用户交易项F在整个样本数据中同时出现的概率,也即支持度;P(F)表征:在整个样本数据中用户交易项F出现的概率。
示例性地,回归测试装置依据上述方法,计算所有用户交易项的所有频繁项集的置信度,然后将置信度大于预设值的频繁项集都确定为预设强规则信息。其中,本申请对预设值的大小不做限制。
至此,回归测试装置通过对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,然后,基于频繁模式树算法对样本数据进行处理,并确定置信度大于预设值的频繁项集,得到了预设强规则信息。以用户办理业务的行为数据作为数据基础,采用频繁模式树算法进行处理,极具科学性和指导性,基于此得到的得到回归测试范围的自然更加准确,从而提高回归测试结果的准确性;另外,也可以帮助测试人员还原业务场景,为编写实际应用场景类型的功能测试案例提供指导性思路。
S203、根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项。
S204、根据目标测试交易项,获取回归测试用例。
S205、根据回归测试用例对交易平台程序进行回归测试,获取测试结果。
示例性地,步骤S203、步骤S204、步骤S205的具体实现与步骤S102、步骤S103、步骤S104类同,此处不再赘述。
本申请提供的回归测试方法,通过获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项;然后,基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息;再根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项;再根据目标测试交易项,获取回归测试用例;最后根据回归测试用例对交易平台程序进行回归测试,获取测试结果。
本申请的方案不仅以用户办理业务的行为数据作为数据基础,而且采用频繁模式树算法进行处理。由于将回归测试与用户真实的业务场景相结合,更符合实际应用;另外,通过频繁模式树算法获取频繁项集,也更具科学性和指导性,不仅可以帮助测试人员还原业务场景,为编写实际应用场景类型的功能测试案例提供指导性思路,也可以得到更加准确的回归测试范围,从而提高回归测试结果的准确性。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图9为本申请实施例提供的一种回归测试装置的结构示意图。如图9所示,本实施例的回归测试装置90包括:交易确定单元901、范围确定单元902、用例确定单元903以及测试单元904。
其中,交易确定单元901,用于获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项;预设对应关系为代码片段与用户交易项之间的对应关系,用户交易项表征用户交易行为;代码片段为交易平台程序中的代码片段。
范围确定单元902,用于根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,预设强规则信息中包括至少一个置信度大于预设值的频繁项集,频繁项集中包括多个用户交易项,频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的。
用例确定单元903,用于根据目标测试交易项,获取回归测试用例。
测试单元904,用于根据回归测试用例对交易平台程序进行回归测试,获取测试结果。
图10为本申请实施例提供的一种回归测试装置的结构示意图。如图10所示,本实施例的回归测试装置100包括:交易确定单元110、范围确定单元120、用例确定单元130以及测试单元140。
其中,交易确定单元110,用于获取修改的代码片段,并基于预设对应关系,确定修改的代码片段所对应的用户交易项;预设对应关系为代码片段与用户交易项之间的对应关系,用户交易项表征用户交易行为;代码片段为交易平台程序中的代码片段。
范围确定单元120,用于根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,预设强规则信息中包括至少一个置信度大于预设值的频繁项集,频繁项集中包括多个用户交易项,频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的。
用例确定单元130,用于根据目标测试交易项,获取回归测试用例。
测试单元140,用于根据回归测试用例对交易平台程序进行回归测试,获取测试结果。
一个示例中,回归测试装置100还包括数据单元150。
数据单元150,用于在根据预设强规则信息、修改的代码片段所对应的用户交易项,确定目标测试交易项之前,基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
一个示例中,数据单元150包括预处理模块151和处理模块152。
预处理模块151,用于对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,其中,每个交易项集中包括一个或多个用户交易项。
处理模块152,用于基于频繁模式树算法对样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
一个示例中,预处理模块151包括分割模块1511、提取模块1512、确定模块1513。
分割模块1511,用于根据用户标识和日期,对用户办理业务的行为数据进行分割处理,得到多个子数据,其中,每个子数据表征每个用户在一天内办理业务的行为数据。
提取模块1512,用于提取每个子数据,获取每个用户的所有用户交易项,确定每个用户的所有用户交易项的集合为每个用户的交易项集。
确定模块1513,用于确定所有用户的交易项集,为样本数据。
一个示例中,处理模块152包括建立模块1521、挖掘模块1522、选择模块1523。
建立模块1521,用于基于频繁模式树算法的数据结构,处理样本数据,得到样本数据的项头表、频繁模式树、以及节点链表;项头表包括样本数据中的出现次数大于阈值的用户交易项、以及对应的出现次数;频繁模式树由项头表映射得到;节点链表包括项头表中的用户交易项在频繁模式树中的位置信息。
挖掘模块1522,用于根据项头表、频繁模式树、以及节点链表,获取项头表中每一用户交易项的条件模式基,条件模式基表征用户交易项与其他的用户交易项之间的关系,并根据每一用户交易项的条件模式基,确定每一用户交易项的频繁项集,每个频繁项集中包括多个用户交易项。
选择模块1523,用于计算所有频繁项集的置信度,确定置信度大于预设值的频繁项集,为预设强规则信息。
一个示例中,范围确定单元120包括第一范围确定模块121。
第一范围确定模块121,用于确定预设强规则信息中包括修改的代码片段所对应的用户交易项的频繁项集中的所有用户交易项,为目标测试交易项;或者,确定预设强规则信息、修改的代码片段所对应的用户交易项两者的并集,确定并集中的所有用户交易项,为目标测试交易项。
一个示例中,用例确定单元130包括用例生成模块131。
用例生成模块131,用于获取用户针对目标测试交易项所输入的代码编写信息,并根据代码编写信息生成回归测试用例。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上数据处理模块的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
图11为本申请实施例提供的电子设备的结构示意图。如图11所示,该电子设备11,包括:处理器12,以及与处理器通信连接的存储器13。
其中,存储器13存储计算机执行指令;处理器12执行存储器13存储的计算机执行指令,以实现如前述任一项的方法。
在上述电子设备的具体实现中,应理解,处理器可以是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,该计算机执行指令被处理器执行时用于实现如前述任一项的方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时用于实现如前述任一项的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (10)

1.一种回归测试方法,其特征在于,所述方法包括:
获取修改的代码片段,并基于预设对应关系,确定所述修改的代码片段所对应的用户交易项;所述预设对应关系为代码片段与用户交易项之间的对应关系,所述用户交易项表征用户交易行为;所述代码片段为交易平台程序中的代码片段;
根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,所述预设强规则信息中包括至少一个置信度大于预设值的频繁项集,所述频繁项集中包括多个用户交易项,所述频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的;
根据所述目标测试交易项,获取回归测试用例;
根据所述回归测试用例对所述交易平台程序进行回归测试,获取测试结果。
2.根据权利要求1所述的方法,其特征在于,在根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项之前,还包括:
基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
3.根据权利要求2所述的方法,其特征在于,所述基于频繁模式树算法对用户办理业务的用户行为数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息,包括:
对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,其中,每个交易项集中包括一个或多个用户交易项;
基于频繁模式树算法对所述样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息。
4.根据权利要求3所述的方法,其特征在于,所述对用户办理业务的行为数据进行预处理,获取包括多个交易项集的样本数据,包括:
根据用户标识和日期,对用户办理业务的行为数据进行分割处理,得到多个子数据,其中,每个子数据表征每个用户在一天内办理业务的行为数据;
提取每个子数据,获取每个用户的所有用户交易项,确定每个用户的所有用户交易项的集合为每个用户的交易项集;
确定所有用户的交易项集,为样本数据。
5.根据权利要求3所述的方法,其特征在于,所述基于频繁模式树算法对所述样本数据进行处理,确定置信度大于预设值的频繁项集,为预设强规则信息,包括:
基于频繁模式树算法的数据结构,处理所述样本数据,得到样本数据的项头表、频繁模式树、以及节点链表;所述项头表包括所述样本数据中的出现次数大于阈值的用户交易项、以及对应的出现次数;所述频繁模式树由所述项头表映射得到;所述节点链表包括项头表中的用户交易项在频繁模式树中的位置信息;
根据所述项头表、频繁模式树、以及节点链表,获取所述项头表中每一用户交易项的条件模式基,所述条件模式基表征用户交易项与其他的用户交易项之间的关系,并根据每一用户交易项的条件模式基,确定每一用户交易项的频繁项集,每个频繁项集中包括多个用户交易项;
计算所有频繁项集的置信度,确定置信度大于预设值的频繁项集,为预设强规则信息。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项,包括:
确定所述预设强规则信息中包括所述修改的代码片段所对应的用户交易项的频繁项集中的所有用户交易项,为目标测试交易项;
或者,确定预设强规则信息、所述修改的代码片段所对应的用户交易项两者的并集,确定所述并集中的所有用户交易项,为目标测试交易项。
7.根据权利要求1-5中任一项所述的方法,其特征在于,根据所述目标测试交易项,获取回归测试用例,包括:
获取用户针对所述目标测试交易项所输入的代码编写信息,并根据所述代码编写信息生成所述回归测试用例。
8.一种回归测试装置,其特征在于,所述装置包括:
交易确定单元,用于获取修改的代码片段,并基于预设对应关系,确定所述修改的代码片段所对应的用户交易项;所述预设对应关系为代码片段与用户交易项之间的对应关系,所述用户交易项表征用户交易行为;所述代码片段为交易平台程序中的代码片段;
范围确定单元,用于根据预设强规则信息、所述修改的代码片段所对应的用户交易项,确定目标测试交易项;其中,所述预设强规则信息中包括至少一个置信度大于预设值的频繁项集,所述频繁项集中包括多个用户交易项,所述频繁项集为基于频繁模式树算法对用户办理业务的用户行为数据进行处理所得到的;
用例确定单元,用于根据所述目标测试交易项,获取回归测试用例;
测试单元,用于根据所述回归测试用例对所述交易平台程序进行回归测试,获取测试结果。
9.一种电子设备,其特征在于,所述电子设备包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-7中任一项所述的方法。
CN202211445790.5A 2022-11-18 2022-11-18 回归测试方法及设备 Pending CN115904970A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211445790.5A CN115904970A (zh) 2022-11-18 2022-11-18 回归测试方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211445790.5A CN115904970A (zh) 2022-11-18 2022-11-18 回归测试方法及设备

Publications (1)

Publication Number Publication Date
CN115904970A true CN115904970A (zh) 2023-04-04

Family

ID=86496698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211445790.5A Pending CN115904970A (zh) 2022-11-18 2022-11-18 回归测试方法及设备

Country Status (1)

Country Link
CN (1) CN115904970A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117474365A (zh) * 2023-12-27 2024-01-30 西安衍舆航天科技有限公司 一种基于人工智能技术的智慧警务方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117474365A (zh) * 2023-12-27 2024-01-30 西安衍舆航天科技有限公司 一种基于人工智能技术的智慧警务方法及系统
CN117474365B (zh) * 2023-12-27 2024-03-08 西安衍舆航天科技有限公司 一种基于人工智能技术的智慧警务方法及系统

Similar Documents

Publication Publication Date Title
US6665669B2 (en) Methods and system for mining frequent patterns
CN109033186A (zh) 数据一致性检测方法、装置、存储介质及电子设备
US10943181B2 (en) Just in time classifier training
CN110297853B (zh) 频繁集挖掘方法和装置
CN108415846A (zh) 一种生成最小自动化测试用例集的方法和装置
Bernstein et al. Incremental topological sort and cycle detection in expected total time
CN114936158A (zh) 一种基于图卷积神经网络的软件缺陷定位方法
CN115904970A (zh) 回归测试方法及设备
CN106203631A (zh) 描述型多维度事件序列的并行频繁情节挖掘方法与系统
US20170103107A1 (en) Method, apparatus, and computer-readable medium to extract a referentially intact subset from a database
US20190220388A1 (en) Boundary search test support device and boundary search test support method
CN106803202B (zh) 一种待测试交易记录的提取方法和装置
CN109086198A (zh) 数据库的测试方法、装置及存储介质
CN114661859A (zh) 基于系统索引的敏感关键字检索方法、设备、介质及产品
CN114021716A (zh) 一种模型训练的方法、系统及电子设备
CN113282686A (zh) 一种不平衡样本的关联规则确定方法及装置
JP2010237909A (ja) 知識補正プログラム、知識補正装置および知識補正方法
US8326808B2 (en) Information processing apparatus, and information processing method, program, and recording medium
CN113138936B (zh) 数据处理方法、装置、存储介质及处理器
CN115687599B (zh) 业务数据处理方法、装置、电子设备及存储介质
CN116578583B (zh) 异常语句识别方法、装置、设备、存储介质
CN113096284B (zh) 一种ctid门禁授权信息的核验方法
EP4235453A1 (en) Method for creating an index for reporting large-scale variant clusterings
US20220172235A1 (en) Storage medium, pattern extraction device, and pattern extraction method
CN117472770A (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