基于日志的测试案例推荐方法、装置、设备和存储介质与流程
未命名
09-12
阅读:72
评论:0

1.本发明涉及金融领域,特别涉及一种基于日志的测试案例推荐方法、装置、设备和存储介质。
背景技术:
2.随着当前社会的金融和计算机发展,银行涉及越来越多的金融交易。每个金融交易可能都利用多个产品互相调用服务完成,具体可以利用产品接口进行服务调用。也就是说,当前的银行在向用户提供服务时,可能存在多个交易链路。
3.在实际应用中,可能存在产品接口频繁变动的情况,这样会影响对于交易链路的测试,不能及时向变动产品接口后的交易链路或产品推荐相应的测试案例,不能满足精准快速的测试需求。
技术实现要素:
4.有鉴于此,本技术的目的在于提供一种基于日志的测试案例推荐方法、装置、设备和存储介质,能够自动根据产品接口的变动情况推荐测试案例,实现精准快速测试。
5.本技术实施例提供了一种基于日志的测试案例推荐方法,所述方法包括:
6.获取日志中存储的全部交易信息,所述交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码;
7.根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口;
8.建立测试案例和所述交易链路、所述交易链路经过的所述产品接口以及所述交易链路经过的所述产品对应的交易场景之间的关联关系;
9.当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试。
10.可选地,所述交易链路包括产品调用链路和交易码调用链路;
11.所述根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口包括:
12.根据不同的所述全局流水号确定不同的所述交易链路,根据所述交易链路中所述上游流水号、所述产品流水号和所述产品名称确定不同的所述交易链路经过的产品,形成所述产品调用链路,根据所述产品接口交易码确定不同的所述交易链路经过的产品接口,形成所述交易码调用链路。
13.可选地,所述方法还包括:
14.当所述第一产品接口变动为所述第二产品接口,获取所述第二产品接口对应的产
品以及产品接口交易码,根据所述产品调用链路和所述交易码调用链路确定调用所述第二产品接口的产品,并向调用所述第二产品接口的产品发送所述第二产品接口对应的产品接口交易码。
15.可选地,所述当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试包括:
16.当所述第一产品接口变动为所述第二产品接口,确定所述第二产品接口对应的产品,根据所述关联关系确定所述第二产品接口对应的产品对应的交易场景,继续根据所述第二产品接口对应的产品对应的交易场景确定所述第二产品接口对应的测试案例,利用所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行联通性测试,确定所述第二产品接口对应的交易链路是否联通。
17.可选地,所述方法还包括:
18.根据所述关联关系确定所述第二产品接口对应的推荐全部交易链路;
19.比较实际测试链路和所述推荐全部交易链路的数量差异;
20.若实际测试链路的数量小于所述推荐全部交易链路的数量,则继续根据所述推荐全部交易链路进行测试;
21.若实际测试链路的数量大于所述推荐全部交易链路的数量,则更新所述推荐全部交易链路。
22.可选地,所述方法还包括:
23.以所述交易链路经过的首个产品接口对应的产品接口交易码为筛选基础,删除重复出现、交易不完整或交易不成功的所述交易链路,形成交易成功的有效交易链路最小集合。
24.本技术实施例提供了一种基于日志的测试案例推荐装置,所述装置包括:
25.获取单元,用于获取日志中存储的全部交易信息,所述交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码;
26.确定单元,用于根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口;
27.建立单元,用于建立测试案例和所述交易链路、所述交易链路经过的所述产品接口以及所述交易链路经过的所述产品对应的交易场景之间的关联关系;
28.推荐单元,用于当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试。
29.可选地,所述交易链路包括产品调用链路和交易码调用链路;所述装置还包括发送单元,所述发送单元,用于:
30.当所述第一产品接口变动为所述第二产品接口,获取所述第二产品接口对应的产品以及产品接口交易码,根据所述产品调用链路和所述交易码调用链路确定调用所述第二产品接口的产品,并向调用所述第二产品接口的产品发送所述第二产品接口对应的产品接口交易码。
31.本技术实施例提供了一种基于日志的测试案例推荐设备,所述设备包括:处理器和存储器;
32.所述存储器,用于存储指令;
33.所述处理器,用于执行所述存储器中的所述指令,执行如上述实施例中任一项所述的方法。
34.本技术实施例提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上述实施例任意一项所述的方法。
35.本技术实施例提供了一种基于日志的测试案例推荐方法,方法包括:获取日志中存储的全部交易信息,交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码,可以利用全局流水号确定某个交易链路,根据上游流水号、产品流水号和产品名称确定交易链路经过的产品,根据产品接口交易码确定交易链路经过的产品接口,最终实现对于交易链路中经过的产品以及产品接口的确定。建立测试案例和交易链路、交易链路经过的产品接口以及交易链路经过的产品对应的交易场景之间的关联关系。当第一产品接口变动为第二产品接口,根据关联关系确定第二产品接口对应的测试案例,根据测试案例对第二产品接口对应的交易链路进行测试,也就是说,通过基于日志得到的交易链路,可以和测试案例建立关联关系,这样当后续出现产品接口变动时,就可以直接根据该关联关系,确定产品接口变动之后对应的测试案例,实现根据交易链路快速精准识别接口变动范围,并且自动推荐接口变动范围对应的测试案例,测试接口变动之后的交易链路情况,实现精准快速高效率的测试。
附图说明
36.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
37.图1示出了本技术实施例提供的一种基于日志的测试案例推荐方法的流程示意图;
38.图2示出了本技术实施例提供的一种交易链路示意图;
39.图3示出了本技术实施例提供的一种基于日志的测试案例推荐装置的结构示意图。
具体实施方式
40.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.在下面的描述中阐述了很多具体细节以便于充分理解本技术,但是本技术还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施例的限制。
42.本发明提供的基于日志的测试案例推荐方法、装置、设备和存储介质可用于金融领域或其他领域,例如,可用于金融领域中的交易链路测试应用场景。其他领域为除金融领域之外的任意领域,例如,计算机领域。上述仅为示例,并不对本发明提供的基于日志的测试案例推荐方法、装置、设备和存储介质的应用领域进行限定。
43.随着当前社会的金融和计算机发展,银行涉及越来越多的金融交易。每个金融交易可能都利用多个产品互相调用服务完成,具体可以利用产品接口进行服务调用。也就是说,当前的银行在向用户提供服务时,可能存在多个交易链路。
44.在实际应用中,可能存在产品接口频繁变动的情况,这样会影响对于交易链路的测试,由于不能确定产品接口变动后交易链路的影响范围,若全部进行测试,会导致测试范围过大,浪费资源,若不全部进行测试,则可能会出现测试遗漏的情况。也就是说,当前在产品接口变动后不能确定变动范围,不能及时向变动产品接口后的交易链路或产品推荐相应的测试案例,不能满足精准快速的测试需求。
45.基于此,本技术实施例提供了一种基于日志的测试案例推荐方法,方法包括:获取日志中存储的全部交易信息,交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码,可以利用全局流水号确定某个交易链路,根据上游流水号、产品流水号和产品名称确定交易链路经过的产品,根据产品接口交易码确定交易链路经过的产品接口,最终实现对于交易链路中经过的产品以及产品接口的确定。建立测试案例和交易链路、交易链路经过的产品接口以及交易链路经过的产品对应的交易场景之间的关联关系。当第一产品接口变动为第二产品接口,根据关联关系确定第二产品接口对应的测试案例,根据测试案例对第二产品接口对应的交易链路进行测试,也就是说,通过基于日志得到的交易链路,可以和测试案例建立关联关系,这样当后续出现产品接口变动时,就可以直接根据该关联关系,确定产品接口变动之后对应的测试案例,实现根据交易链路快速精准识别接口变动范围,并且自动推荐接口变动范围对应的测试案例,测试接口变动之后的交易链路情况,实现精准快速高效率的测试。
46.为了更好地理解本技术的技术方案和技术效果,以下将结合附图对具体的实施例进行详细的描述。
47.参见图1,该图为本技术实施例提供的一种基于日志的测试案例推荐方法的流程示意图。
48.本实施例提供的基于日志的测试案例推荐方法包括以下步骤:
49.s101,获取日志中存储的全部交易信息。
50.在本技术的实施例中,在实际向用户提供服务的过程中,对于某个金融交易的交易信息可以存储在日志中。交易信息可以包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码。其中,全局流水号用于标识一笔交易。上游流水号标识在该笔交易中某个产品接收到的调用该产品服务的上游产品的流水号。产品流水号则是该产品自身的流水号,可以作为调用其他产品服务时,传输给其他产品的上游流水号。产品接口交易码为调用某个产品某个接口时的交易码,即利用产品接口交易码调用该产品服务。
51.同一个产品可以对应多个产品接口,每个产品接口对应一个产品接口交易码。
52.s102,根据全局流水号确定交易链路,根据上游流水号、产品流水号和产品名称确定交易链路经过的产品,根据产品接口交易码确定交易链路经过的产品接口。
53.在本技术的实施例中,由于全局流水号标识一笔交易,日志中存储多个交易信息,因此可以利用全局流水号确定交易链路,具体可以通过对日志中相同全局流水号的提取,确定属于同一交易链路的产品以及产品接口。
54.可以根据上游流水号、产品流水号和产品名称确定属于同一交易链路经过的产品,根据产品接口交易码确定属于同一交易链路经过的产品接口。
55.具体的,交易链路可以包括产品调用链路和交易码调用链路,其中产品调用链路为产品之间的调用路径,交易码调用链路为产品接口之间的调用路径。也就是说,可以分别通过产品之间的调用路径和产品接口之间的调用路径去标识一个交易链路,实现对于交易链路的全面记录,方便后续查询。
56.可以根据不同的全局流水号确定不同的交易链路,根据交易链路中上游流水号和产品流水号确定不同的交易链路经过的产品,形成产品调用链路,参考图2所示,根据产品接口交易码确定不同的交易链路经过的产品接口,形成交易码调用链路,参考图2所示。具体可以根据日志记录的先后顺序确定产品调用以及产品接口调用的先后顺序。
57.在实际应用中,在根据全局流水号确定交易链路时,交易链路可能不是完整的链路或者不是交易成功的链路,例如向用户提供服务的前端接口不匹配或者上游产品和下游产品环境不联通,此时这些交易链路可以无需关注,这样就能够实现对于交易成功的链路的重点关注。
58.具体的,可以以交易链路经过的首个产品接口对应的产品接口交易码为筛选基础,依次对交易链路中第i个产品接口交易码进行比对,删除重复出现的交易链路以及交易不完整或交易不成功的链路,形成交易成功的有效交易链路最小集合,i>1。
59.在实际应用中,即使是从同一个产品接口开始进行的交易,也可能后续经过不同的产品接口,因此在进行交易链路的筛选时,可以依次从首个产品接口开始,逐渐以交易链路中的产品接口调用顺序进行产品接口交易码的比对,以确定是否出现重复的交易链路。
60.s103,建立测试案例和交易链路、交易链路经过的产品接口以及交易链路经过的产品对应的交易场景之间的关联关系。
61.在本技术的实施例中,可以获取多个测试案例,测试案例可以是对某个产品进行测试,也可以是对整个交易链路进行测试,还可以是对某个交易场景进行测试。测试案例还可以分类为冒烟测试案例和稳定性回归测试案例,其中,冒烟测试案例主要是针对首次进行测试的情况,稳定性回归测试案例主要是针对最后几次进行测试的情况。
62.可以建立测试案例和交易链路、交易链路经过的产品接口以及交易链路经过的产品对应的交易场景之间的关联关系。具体的,可以建立测试案例和产品调用链路、交易码调用链路、产品接口、产品、产品所属的模块以及交易场景之间的关联关系。
63.这样根据交易链路以及关联关系,在产品接口发生变动时,就能够确定由于产品接口变动影响的产品、交易链路、交易场景以及测试案例的范围,就可以实现对接口变动范围的精准识别。
64.s104,第一产品接口变动为第二产品接口,根据关联关系确定第二产品接口对应的测试案例,根据第二产品接口对应的测试案例对第二产品接口对应的交易链路进行测试。
65.在本技术的实施例中,当出现产品接口变动时,例如第一产品接口变动为第二产
品接口,可以根据关联关系确定第二产品接口对应的测试案例,根据测试案例对第二产品接口、第二产品接口对应的产品以及第二产品接口对应的交易链路进行测试。
66.在实际应用中,当产品接口变动时,会提供变动后的产品接口的相关信息,例如第二产品接口对应的产品以及第二产品接口的产品接口交易码。因此可以利用第二产品接口或者第二产品接口对应的产品以及关联关系确定测试案例,此时测试案例可以包括仅对第二产品接口对应的产品进行测试的测试案例,也可以包括对第二产品接口对应的整个交易链路进行测试的测试案例,还可以包括第二产品接口对应的交易场景进行测试的测试案例。
67.作为一种可能的实现方式,可以在产品接口变动后进行冒烟测试,实现对于产品接口变动后的交易链路的联通情况进行自动测试。当第一产品接口变动为第二产品接口,确定第二产品接口对应的产品,根据关联关系确定第二产品接口对应的产品对应的交易场景,继续根据第二产品接口对应的产品对应的交易场景确定第二产品接口对应的测试案例,利用该第二产品接口对应的测试案例对第二产品接口对应的交易链路进行联通性测试,确定交易链路是否联通。
68.也就是说,在进行冒烟测试时,是通过交易场景确定测试案例,可以对交易链路的联通情况进行测试,实现对产品接口变动影响的交易场景进行精准测试分析。在测试完成之后,可以确定第二产品接口对应的交易链路是否联通,若联通,则确定该交易链路的相关产品都已经部署版本并且产品接口已经联通。若未联通,则可以进行该交易链路的产品开发进行版本部署、产品接口一致性检测或相关环境配置调试等。
69.作为另一种可能的实现方式,可以在产品接口变动后进行稳定性回归测试,实现对于产品接口变动后的多个交易链路进行多次自动测试。可以基于日志获取实际交易的实际测试链路,根据关联关系确定第二产品接口对应的推荐全部交易链路。而后比较实际测试链路和推荐全部交易链路,得到差异。例如可以进行数量比较,得到数量差异,若数量一致,则说明实际测试链路覆盖推荐全部交易链路,不存在遗漏的情况。若实际测试链路的数量小于推荐全部交易链路的数量,则代表可能出现测试遗漏的情况,此时继续根据推荐全部交易链路进行测试。若实际测试链路的数量大于推荐全部交易链路的数量,则代表根据日志获取的交易链路出现缺失,此时可以更新推荐全部交易链路,例如更新有效交易链路最小集合。
70.具体的,冒烟测试和稳定性回归测试都可以通过devops调起自动化测试任务,进行自动测试。
71.在实际应用中,除了冒烟测试和稳定性回归测试以外,其他的对产品或产品接口的修改也可以利用关联关系以及交易链路对影响范围进行分析,明确测试范围,实现对于测试范围的精准识别。
72.在本技术的实施例中,当产品接口变动时,可以根据交易链路确定调用该变动后产品接口的产品,并且通知该产品变动产品接口后的产品接口交易码。当第一产品接口变动为第二产品接口,获取第二产品接口对应的产品以及产品接口交易码,根据产品调用链路和交易码调用链路确定调用该第二产品接口的全部产品,并向调用该第二产品接口的全部产品发送第二产品接口对应的产品接口交易码,以便后续其他产品利用产品接口交易码顺利调用该第二产品接口。
73.由此可见,本技术通过日志构建交易链路的全景图,当产品接口变动,可以根据交易链路确定该产品接口对应的所有链路,就可以更准确的识别产品接口变动的影响范围,在推荐测试案例时能更准确的识别产品接口变动对产品的影响以及识别需要测试的交易场景。这种测试更具有针对性,既避免了测试遗漏,又避免了测试蔓延,使测试分析更精准,提高了测试质量,快速识别影响范围,自动化选取测试案例执行测试,也提高了测试效率。通过对推荐的测试案例应用于冒烟测试,可以及时识别交易链路的联通情况,也可以在稳定性回归测试的测试末期评价测试全面性,提醒测试遗漏,进一步保证测试质量。
74.本技术实施例提供了一种基于日志的测试案例推荐方法,方法包括:获取日志中存储的全部交易信息,交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码,可以利用全局流水号确定某个交易链路,根据上游流水号、产品流水号和产品名称确定交易链路经过的产品,根据产品接口交易码确定交易链路经过的产品接口,最终实现对于交易链路中经过的产品以及产品接口的确定。建立测试案例和交易链路、交易链路经过的产品接口以及交易链路经过的产品对应的交易场景之间的关联关系。当第一产品接口变动为第二产品接口,根据关联关系确定第二产品接口对应的测试案例,根据测试案例对第二产品接口对应的交易链路进行测试,也就是说,通过基于日志得到的交易链路,可以和测试案例建立关联关系,这样当后续出现产品接口变动时,就可以直接根据该关联关系,确定产品接口变动之后对应的测试案例,实现根据交易链路快速精准识别接口变动范围,并且自动推荐接口变动范围对应的测试案例,测试接口变动之后的交易链路情况,实现精准快速高效率的测试。
75.基于以上实施例提供的一种基于日志的测试案例推荐方法,本技术实施例还提供了一种基于日志的测试案例推荐装置,下面结合附图来详细说明其工作原理。
76.参见图3,该图为本技术实施例提供的一种基于日志的测试案例推荐装置的结构示意图。
77.本实施例提供的基于日志的测试案例推荐装置200包括:
78.获取单元210,用于获取日志中存储的全部交易信息,所述交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码;
79.确定单元220,用于根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口;
80.建立单元230,用于建立测试案例和所述交易链路、所述交易链路经过的所述产品接口以及所述交易链路经过的所述产品对应的交易场景之间的关联关系;
81.推荐单元240,用于当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试。
82.可选地,所述交易链路包括产品调用链路和交易码调用链路;
83.所述确定单元220,用于:
84.根据不同的所述全局流水号确定不同的所述交易链路,根据所述交易链路中所述上游流水号、所述产品流水号和所述产品名称确定不同的所述交易链路经过的产品,形成所述产品调用链路,根据所述产品接口交易码确定不同的所述交易链路经过的产品接口,
形成所述交易码调用链路。
85.可选地,所述交易链路包括产品调用链路和交易码调用链路;所述装置还包括发送单元,所述发送单元,用于:
86.当所述第一产品接口变动为所述第二产品接口,获取所述第二产品接口对应的产品以及产品接口交易码,根据所述产品调用链路和所述交易码调用链路确定调用所述第二产品接口的产品,并向调用所述第二产品接口的产品发送所述第二产品接口对应的产品接口交易码。
87.可选地,所述推荐单元240,用于:
88.当所述第一产品接口变动为所述第二产品接口,确定所述第二产品接口对应的产品,根据所述关联关系确定所述第二产品接口对应的产品对应的交易场景,继续根据所述第二产品接口对应的产品对应的交易场景确定所述第二产品接口对应的测试案例,利用所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行联通性测试,确定所述第二产品接口对应的交易链路是否联通。
89.可选地,所述装置还包括比较单元,所述比较单元,用于:
90.根据所述关联关系确定所述第二产品接口对应的推荐全部交易链路;
91.比较实际测试链路和推荐全部交易链路的数量差异;
92.若实际测试链路的数量小于推荐全部交易链路的数量,则继续根据推荐全部交易链路进行测试;
93.若实际测试链路的数量大于推荐全部交易链路的数量,则更新推荐全部交易链路。
94.可选地,所述装置还包括筛选单元,所述筛选单元,用于:
95.以所述交易链路经过的首个产品接口对应的产品接口交易码为筛选基础,删除重复出现、交易不完整或交易不成功的所述交易链路,形成交易成功的有效交易链路最小集合。
96.基于以上实施例提供的一种基于日志的测试案例推荐方法,本技术实施例还提供了一种基于日志的测试案例推荐设备,基于日志的测试案例推荐设备包括:
97.处理器和存储器,处理器的数量可以一个或多个。在本技术的一些实施例中,处理器和存储器可通过总线或其它方式连接。
98.存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括nvram。存储器存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
99.处理器控制终端设备的操作,处理器还可以称为cpu。
100.上述本技术实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、dsp、asic、fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以
是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
101.本技术实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例的方法中的任意一种实施方式。
102.在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
103.需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
104.当介绍本技术的各种实施例的元件时,冠词“一”、“一个”、“这个”和“所述”都意图表示有一个或多个元件。词语“包括”、“包含”和“具有”都是包括性的并意味着除了列出的元件之外,还可以有其它元件。
105.需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
106.可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算
机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
107.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
108.以上所述仅是本技术的优选实施方式,虽然本技术已以较佳实施例披露如上,然而并非用以限定本技术。任何熟悉本领域的技术人员,在不脱离本技术技术方案范围情况下,都可利用上述揭示的方法和技术内容对本技术技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本技术技术方案的内容,依据本技术的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本技术技术方案保护的范围内。
技术特征:
1.一种基于日志的测试案例推荐方法,其特征在于,所述方法包括:获取日志中存储的全部交易信息,所述交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码;根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口;建立测试案例和所述交易链路、所述交易链路经过的所述产品接口以及所述交易链路经过的所述产品对应的交易场景之间的关联关系;当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试。2.根据权利要求1所述的方法,其特征在于,所述交易链路包括产品调用链路和交易码调用链路;所述根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口包括:根据不同的所述全局流水号确定不同的所述交易链路,根据所述交易链路中所述上游流水号、所述产品流水号和所述产品名称确定不同的所述交易链路经过的产品,形成所述产品调用链路,根据所述产品接口交易码确定不同的所述交易链路经过的产品接口,形成所述交易码调用链路。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述第一产品接口变动为所述第二产品接口,获取所述第二产品接口对应的产品以及产品接口交易码,根据所述产品调用链路和所述交易码调用链路确定调用所述第二产品接口的产品,并向调用所述第二产品接口的产品发送所述第二产品接口对应的产品接口交易码。4.根据权利要求1所述的方法,其特征在于,所述当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试包括:当所述第一产品接口变动为所述第二产品接口,确定所述第二产品接口对应的产品,根据所述关联关系确定所述第二产品接口对应的产品对应的交易场景,继续根据所述第二产品接口对应的产品对应的交易场景确定所述第二产品接口对应的测试案例,利用所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行联通性测试,确定所述第二产品接口对应的交易链路是否联通。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据所述关联关系确定所述第二产品接口对应的推荐全部交易链路;比较实际测试链路和所述推荐全部交易链路的数量差异;若实际测试链路的数量小于所述推荐全部交易链路的数量,则继续根据所述推荐全部交易链路进行测试;若实际测试链路的数量大于所述推荐全部交易链路的数量,则更新所述推荐全部交易
链路。6.根据权利要求1-5任意一项所述的方法,其特征在于,所述方法还包括:以所述交易链路经过的首个产品接口对应的产品接口交易码为筛选基础,删除重复出现、交易不完整或交易不成功的所述交易链路,形成交易成功的有效交易链路最小集合。7.一种基于日志的测试案例推荐装置,其特征在于,所述装置包括:获取单元,用于获取日志中存储的全部交易信息,所述交易信息包括全局流水号、上游流水号、产品流水号、产品名称以及产品接口交易码;确定单元,用于根据所述全局流水号确定交易链路,根据所述上游流水号、所述产品流水号和所述产品名称确定所述交易链路经过的产品,根据所述产品接口交易码确定所述交易链路经过的产品接口;建立单元,用于建立测试案例和所述交易链路、所述交易链路经过的所述产品接口以及所述交易链路经过的所述产品对应的交易场景之间的关联关系;推荐单元,用于当第一产品接口变动为第二产品接口,根据所述关联关系确定所述第二产品接口对应的测试案例,根据所述第二产品接口对应的测试案例对所述第二产品接口对应的交易链路进行测试。8.根据权利要求7所述的装置,其特征在于,所述交易链路包括产品调用链路和交易码调用链路;所述装置还包括发送单元,所述发送单元,用于:当所述第一产品接口变动为所述第二产品接口,获取所述第二产品接口对应的产品以及产品接口交易码,根据所述产品调用链路和所述交易码调用链路确定调用所述第二产品接口的产品,并向调用所述第二产品接口的产品发送所述第二产品接口对应的产品接口交易码。9.一种基于日志的测试案例推荐设备,其特征在于,所述设备包括:处理器和存储器;所述存储器,用于存储指令;所述处理器,用于执行所述存储器中的所述指令,执行如权利要求1-6中任一项所述的方法。10.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-6任意一项所述的方法。
技术总结
本申请提供一种基于日志的测试案例推荐方法、装置、设备和存储介质,应用于金融领域或其他领域,方法包括:获取日志中存储的全部交易信息,可以利用全局流水号确定某个交易链路,根据上游流水号、产品流水号和产品名称确定交易链路经过的产品,根据产品接口交易码确定交易链路经过的产品接口。通过基于日志得到的交易链路,可以和测试案例建立关联关系,这样当后续出现产品接口变动时,就可以直接根据该关联关系,确定产品接口变动之后对应的测试案例,实现根据交易链路快速精准识别接口变动范围,并且自动推荐接口变动范围对应的测试案例,测试接口变动之后的交易链路情况,实现精准快速高效率的测试。准快速高效率的测试。准快速高效率的测试。
技术研发人员:李洋
受保护的技术使用者:中国银行股份有限公司
技术研发日:2023.06.09
技术公布日:2023/9/9
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/