CN110597714B - kafka消息的测试方法、装置、计算机设备及存储介质 - Google Patents
kafka消息的测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110597714B CN110597714B CN201910801855.7A CN201910801855A CN110597714B CN 110597714 B CN110597714 B CN 110597714B CN 201910801855 A CN201910801855 A CN 201910801855A CN 110597714 B CN110597714 B CN 110597714B
- Authority
- CN
- China
- Prior art keywords
- test
- kafka
- message
- test data
- data
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种kafka消息的测试方法、装置、计算机设备及存储介质,所述方法包括:接收来自测试界面应用程序的kafka消息测试数据的测试请求;kafka消息测试数据包括主题和测试请求信息;通过预设的kafka测试模板,将主题和测试请求信息转换成kafka测试数据;根据预设的测试要求并通过测试通用接口将kafka测试数据发送至预设的kafka集群;接收反馈的kafka测试接收消息,将kafka测试接收消息存储至数据库,与主题关联;将与主题关联的所有kafka测试接收消息发送至测试界面应用程序进行展示;在展示的所有kafka测试接收消息中包含与主题和测试请求信息一致的kafka测试接收消息时,确认测试成功。如此,实现快速地输入kafka测试消息,根据测试要求快速构造测试接口及发送,节省测试成本。
Description
技术领域
本发明涉及软件测试领域,尤其涉及一种kafka消息的测试方法、装置、计算机设备及存储介质。
背景技术
目前,kafka是一种高吞吐量的分布式发布订阅消息的系统,即为一个分布式消息队列,主题生产者(Producer)发送主题消息至kafka集群里,主题消费者(Consumer)从kafka集群里获取主题消息,kafka性能测试是权衡kafka性能的重要指标,而kafka性能测试其中一个指标为主题生产者每秒逐条发送不同主题的测试消息至kafka的总数。在现有的kafka性能测试过程中,主题生产者发送某一主题的测试消息之后需要重新输入该主题的测试消息,导致测试消息无法重复利用或者在历史测试消息的基础上修改利用,而且主题之间进行切换时,需要针对不同的主题单独对测试接口重新设置,造成无法快速批量发送不同主题的kafka测试消息,并且无法快速地构造不同主题的测试接口。
发明内容
本发明提供一种kafka消息的测试方法、装置、计算机设备及存储介质,实现通过快速地、高效地输入kafka消息测试数据,并且根据测试要求,快速地构造与主题相应的测试通用接口后发送转换后的测试数据,同时接收反馈的kafka测试接收消息并展示,以确定测试结果,实现了批量地、快速地输入kafka测试消息,并根据测试要求能快速构造与主题相应的测试接口,减少了测试员编写测试消息和构造测试接口的时间,而且避免了测试员的编写和配置错误,从而节省了测试成本。
一种kafka消息的测试方法,包括:
接收来自测试界面应用程序的kafka消息测试数据的测试请求;所述kafka消息测试数据包括主题和测试请求信息;
通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据;
根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群;
接收所述kafka集群反馈的kafka测试接收消息,根据所述主题将所述kafka测试接收消息存储至数据库,并在所述数据库中将所述kafka测试接收消息与所述主题关联;
将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示;
在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功。
一种kafka消息的测试装置,包括:
接收模块,用于接收来自测试界面应用程序的kafka消息测试数据的测试请求;所述kafka消息测试数据包括主题和测试请求信息;
转换模块,用于通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据;
第一发送模块,用于根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群;
接收模块,用于接收所述kafka集群反馈的kafka测试接收消息,根据所述主题将所述kafka测试接收消息存储至数据库,并在所述数据库中将所述kafka测试接收消息与所述主题关联;
反馈模块,用于将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示;
确认模块,用于在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功。
本发明提供的kafka消息的测试方法、装置、计算机设备及存储介质,通过接收来自所述测试界面应用程序的所述kafka消息测试数据的测试请求,并通过所述测试模板转换生成所述kafka测试数据,从而根据所述测试要求,通过对所述测试通用接口进行构造并发送所述kafka测试数据至所述kafka集群,接收所述kafka集群反馈的所述kafka测试接收消息并存储,并将所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示,在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功。如此,通过快速地、高效地输入kafka消息测试数据,并且根据测试要求,快速地构造与主题相应的测试通用接口后发送转换后的测试数据,同时接收反馈的kafka测试接收消息并展示,以确定测试结果,实现了批量地、快速地输入kafka测试消息,并根据测试要求能快速构造与主题相应的测试接口,减少了测试员编写测试消息和构造测试接口的时间,而且避免了测试员的编写和配置错误,从而节省了测试成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中kafka消息的测试方法的应用环境示意图;
图2是本发明一实施例中kafka消息的测试方法的流程图;
图3是本发明一实施例中kafka消息的测试方法的步骤S20的流程图;
图4是本发明一实施例中kafka消息的测试方法的步骤S30的流程图;
图5是本发明一实施例中kafka消息的测试装置的原理框图;
图6是本发明一实施例中kafka消息的测试装置的第一发送模块的原理框图;
图7是本发明一实施例中kafka消息的测试装置的转换模块的原理框图;
图8是本发明一实施例中计算机设备的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的kafka消息的测试方法,可应用在如图1的应用环境中,其中,客户端(计算机设备)通过网络与服务器进行通信。其中,客户端(计算机设备)包括但不限于为各种个人计算机、笔记本电脑、智能手机、平板电脑、摄像头和便携式可穿戴设备。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种kafka消息的测试方法,其技术方案主要包括以下步骤S10-S60:
S10,接收来自测试界面应用程序的kafka消息测试数据的测试请求;所述kafka消息测试数据包括主题和测试请求信息。
可理解地,接收来自测试界面应用程序的kafka消息测试数据的测试请求,所述测试界面应用程序提供所述kafka消息测试数据中的所述主题(Topic)和所述测试请求信息(Test Request)的输入栏,其中,所述输入栏的输入方式可以根据测试需求进行设置,比如下拉选项进行选择的输入方式、空白栏直接输入的输入方式、清单列表选择的输入方式等等,优选地,所述测试界面应用程序提供的所述主题的输入方式为下拉选项进行选择的输入方式,在一实施例中,接收所述测试界面应用程序中的所述主题的下拉选项按键的触发指令,获取数据库中预设的kafka集群的所有主题,并将所述kafka集群的所有主题发送至所述测试界面应用程序中的所述主题的下拉选项清单中,以供用户在所述主题的下拉选项清单中选择,也即所述测试界面应用程序输入中的所述主题栏输入的主题为所述kafka集群的所有主题中的其中一个。在另一实施例中,所述测试请求信息的输入栏可以在所述测试界面应用程序的展示清单中选择。
其中,所述kafka消息测试数据包括所述主题和所述测试请求信息,所述主题为所述kafka集群的所有主题中的其中一个,即所述主题都能够在所述kafka集群的所有主题中的一个与之相对应的主题,例如:所述主题为“yycs-notify-contractStatus-test”,而“yycs-notify-contractStatus-test”为所述kafka集群中的所有主题中的其中一个主题。所述测试请求信息为发送至kafka集群并符合kafka格式的测试内容,例如为{"contractNo":"2017112700000001","contractStatus":"3020"}。
S20,通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据。
可理解地,所述kafka测试模板为符合kafka执行语言的通用模板,可以直接被调用,即将所述主题和所述测试请求信息输入所述kafka测试模板中后转换生成所述kafka测试数据。
在一实施例中,如图3所示,所述步骤S20中,所述通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据,包括:
S201,获取所述kafka测试模板;所述kafka测试模板包括待替换主题和待替换测试请求信息。
可理解地,所述kafka测试模板可以从服务器或者数据库中获取,所述kafka测试模板的内容中包含所述待替换主题和所述待替换测试请求信息。
S202,在所述kafka测试模板中,将所述kafka消息测试数据中的主题覆盖所述kafka测试模板中的待替换主题,同时将所述kafka消息测试数据中的测试请求信息覆盖所述kafka测试模板中的待替换测试请求信息,并将覆盖后的所述kafka测试模板标记为所述kafka消息发送测试数据。
可理解地,将所述kafka消息测试数据中的主题在所述kafka测试模板中的待替换主题的位置进行覆盖写入的操作,将所述kafka消息测试数据中的测试请求信息在所述kafka测试模板中的待替换测试请求信息的位置进行覆盖写入的操作,例如:上述例子中将“yycs-notify-contractStatus-test”覆盖kafka测试模板中“topic-test”,将“{"contractNo":"2017112700000001","contractStatus":"3020"}”覆盖kafka测试模板中“request-test”,将所有的所述待替换主题和所述待替换测试请求信息都被覆盖写入后的所述kafka测试模板标记为所述kafka测试数据。
如此,通过统一的所述kafka测试模板,实现了自动生成符合kafka执行要求的所述kafka测试数据,减少测试员编写所述kafka测试数据的时间,并且能够减少测试员的编写错误,可以简化测试流程,节省了测试时间。
S30,根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群。
可理解地,所述测试通用接口可以根据不同的工具进行配置,比如可以通过jmeter工具进行配置,也可以通过loaderunner工具进行配置等,优选地,所述测试通用接口通过jmeter工具进行配置,因为jmeter工具的代码开源及jmeter工具的代码环境容易搭建。根据所述测试要求,通过配置所述测试通用接口将所述kafka测试数据发送至预设的kafka集群。
在一实施例中,所述步骤S30之前,所述根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群之前,包括:
根据所述主题获取配置参数,在jmeter工具中根据所述配置参数配置所述测试通用接口。
可理解地,根据所述kafka消息测试数据中的主题获取与所述主题相对应的配置参数,在jmeter工具中根据所述配置参数对所述测试通用接口进行配置。在该实施例中,不同的主题对应不同的所述配置参数。在一实施例中,不同的主题可以对应相同一个所述配置参数。
如此,通过快速获取与所述主题相对应的配置参数,无需手动配置与所述主题相应的参数,实现了通过jmeter工具自动切换不同的主题对应的配置参数,进而配置所述测试通用接口,简化了测试流程,减少了测试时间。
在一实施例中,如图4所示,所述步骤S30中,所述根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群,包括:
S301,获取所述测试要求中包含的测试参数。
可理解地,所述测试要求根据测试需求进行设置,可以为发送所述kafka测试数据的重复次数的要求,其中,所述测试参数为所述重复次数,也可以为在某一时间段重复发送所述kafka测试数据的要求,其中,所述测试参数为所述某一时间段,例如:测试要求为发送所述kafka测试数据的重复10000次数,测试参数为10000次。
S302,将所述测试参数和所述kafka测试数据输入所述jmeter工具中,所述jmeter工具根据所述测试参数将所述kafka测试数据通过所述测试通用接口发送至所述kafka集群。
可理解地,将所述测试参数和所述kafka测试数据输入所述jmeter工具中,根据所述测试参数通过已经配置后的所述测试通用接口发送所述kafka测试数据至所述kafka集群。例如:上述例子测试要求为发送所述kafka测试数据的重复10000次数,测试参数为10000次,所述kafka测试数据的主题为“yycs-notify-contractStatus-test”,则在jmeter工具中通过与该主题相对应的配置参数配置测试通用接口,向所述kafka集群重复发送所述kafka测试数据10000次。在一实施例中,所述测试通用接口可以包含预设的主题生产者(Producer),通过所述主题生产者可以发送主题消息至所述kafka集群。
如此,实现了根据测试要求能快速构造与主题相应的测试接口,减少了测试员编写测试消息和构造测试接口的时间,从而节省了测试成本。
S40,接收所述kafka集群反馈的kafka测试接收消息,根据所述主题将所述kafka测试接收消息存储至数据库,并在所述数据库中将所述kafka测试接收消息与所述主题关联。
可理解地,接收所述kafka集群反馈的所述kafka测试接收消息,根据所述kafka消息测试数据中的主题将所述kafka测试接收消息存储至数据库,并将所述kafka测试接收消息与所述主题进行关联。
S50,将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示。
可理解地,将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序的界面进行显示,显示的方式可以为清单列表的显示方式,即将所述kafka测试接收消息的内容以清单列表的显示方式在所述测试界面应用程序的界面上显示。
S60,在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功。
可理解地,在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,则确定所述kafka测试数据发送过程中不丢失且所述kafka集群接收所述kafka测试数据过程中不丢失,从而确认对所述kafka消息测试数据的测试成功。在一实施例中,在所述测试界面应用程序中展示的所有所述kafka测试接收消息中不包含与所述kafka消息测试数据的主题或/和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试不成功。
在一实施例中,所述将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示之后,包括:
接收对所述测试界面应用程序中展示的所有所述kafka测试接收消息中的其中一个所述kafka测试接收消息的选择指令,将选择的其中一个所述kafka测试接收消息记录为下一个kafka消息测试数据,并生成所述下一个kafka消息测试数据的测试请求。
可理解地,测试员可以在所述测试界面应用程序中展示的所有所述kafka测试接收消息中选择其中一个所述kafka测试接收消息,也即根据所述kafka测试接收消息的内容自动填充至所述测试界面应用程序中所述主题和所述测试请求信息的输入栏,进而会接收对所述测试界面应用程序中展示的所有所述kafka测试接收消息中的其中一个所述kafka测试接收消息的选择指令,将选择的其中一个所述kafka测试接收消息记录为下一个kafka消息测试数据,并生成所述下一个kafka消息测试数据的测试请求。
在一实施例中,所述将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示之后,还包括:
接收对所述测试界面应用程序中展示的所有所述kafka测试接收消息中的其中一个所述kafka测试接收消息的修改指令,获取所述修改指令中的修改参数,根据所述修改参数对选择的其中一个所述kafka测试接收消息进行修改,并将修改之后的所述kafka测试接收消息记录为下一个kafka消息测试数据,并生成所述下一个kafka消息测试数据的测试请求。
可理解地,测试员可以在所述测试界面应用程序中展示的所有所述kafka测试接收消息中选择其中一个所述kafka测试接收消息,对所述kafka测试接收消息进行修改,也即根据所述kafka测试接收消息的内容自动填充至所述测试界面应用程序中所述主题和所述测试请求信息的输入栏,对所述所述主题或/和所述测试请求信息进行修改,进而会接收对所述测试界面应用程序中展示的所有所述kafka测试接收消息中的其中一个所述kafka测试接收消息的修改指令,获取所述修改指令中的修改参数,根据所述修改参数对所述kafka测试接收消息进行修改,将修改之后的所述kafka测试接收消息记录为下一个kafka消息测试数据,并生成所述下一个kafka消息测试数据的测试请求。
如此,实现了快速地、高效地输入所述kafka消息测试数据,减少了测试员编写测试消息,并节省了测试成本。
本发明提供的kafka消息的测试方法、装置、计算机设备及存储介质,通过接收来自所述测试界面应用程序的所述kafka消息测试数据的测试请求,并通过所述测试模板转换生成所述kafka测试数据,从而根据所述测试要求,通过对所述测试通用接口进行构造并发送所述kafka测试数据至所述kafka集群,接收所述kafka集群反馈的所述kafka测试接收消息并存储,并将所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示,在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功。如此,通过快速地、高效地输入kafka消息测试数据,并且根据测试要求,快速地构造与主题相应的测试通用接口后发送转换后的测试数据,同时接收反馈的kafka测试接收消息并展示,以确定测试结果,实现了批量地、快速地输入kafka测试消息,并根据测试要求能快速构造与主题相应的测试接口,减少了测试员编写测试消息和构造测试接口的时间,而且避免了测试员的编写和配置错误,从而节省了测试成本。
在一实施例中,提供一种kafka消息的测试装置,该kafka消息的测试装置与上述实施例中kafka消息的测试方法一一对应。如图5所示,该kafka消息的测试装置包括接收模块11、转换模块12、第一发送模块13、接收模块14、反馈模块15和确认模块16。各功能模块详细说明如下:
接收模块11,用于接收来自测试界面应用程序的kafka消息测试数据;所述kafka消息测试数据包括主题和测试请求信息;
转换模块12,用于通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据;
第一发送模块13,用于根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群;
接收模块14,用于接收所述kafka集群反馈的kafka测试接收消息,根据所述主题将所述kafka测试接收消息存储至数据库,并在所述数据库中将所述kafka测试接收消息与所述主题关联;
反馈模块15,用于将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示,以供用户在所述测试界面应用程序中检查和选择所述kafka消息测试数据。
确认模块16,用于在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功。
在一实施例中,所述kafka消息的测试装置,还包括:
配置模块,用于根据所述主题获取配置参数,在jmeter工具中根据所述配置参数配置所述测试通用接口。
在一实施例中,如图6所示,所述第一发送模块13,包括:
获取模块31,用于获取所述测试要求中包含的测试参数;
第二发送模块32,用于将所述测试参数和所述kafka消息发送测试数据输入所述jmeter工具中,所述jmeter工具根据所述测试参数将所述kafka消息发送测试数据通过所述测试通用接口发送至所述kafka集群。
在一实施例中,如图7所示,所述转换模块12,包括:
获取模板模块21,用于所述kafka测试模板;所述kafka测试模板包括待替换主题和待替换测试请求信息;
生成模块22,用于在所述kafka测试模板中,将所述kafka消息测试数据中的主题覆盖所述kafka测试模板中的待替换主题,同时将所述kafka消息测试数据中的测试请求信息覆盖所述kafka测试模板中的待替换测试请求信息,并将覆盖后的所述kafka测试模板标记为所述kafka消息发送测试数据。
关于kafka消息的测试装置的具体限定可以参见上文中对于kafka消息的测试方法的限定,在此不再赘述。上述kafka消息的测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种kafka消息的测试方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中kafka消息的测试方法。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中kafka消息的测试方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (7)
1.一种kafka消息的测试方法,其特征在于,包括:
接收来自测试界面应用程序的kafka消息测试数据的测试请求;所述kafka消息测试数据包括主题和测试请求信息;
通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据;
根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群;
接收所述kafka集群反馈的kafka测试接收消息,根据所述主题将所述kafka测试接收消息存储至数据库,并在所述数据库中将所述kafka测试接收消息与所述主题关联;
将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示;
在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功;
所述根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群之前,包括:
根据所述主题获取配置参数,在jmeter工具中根据所述配置参数配置所述测试通用接口;
所述根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群,包括:
获取所述测试要求中包含的测试参数;所述测试参数为要求重复发送所述kafka测试数据的时间段;
将所述测试参数和所述kafka测试数据输入所述jmeter工具中,所述jmeter工具根据所述测试参数将所述kafka测试数据通过所述测试通用接口发送至所述kafka集群;所述测试通用接口包含预设的主题生产者,通过所述主题生产者发送主题消息至所述kafka集群。
2.如权利要求1所述的kafka消息的测试方法,其特征在于,所述将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示之后,包括:
接收对所述测试界面应用程序中展示的所有所述kafka测试接收消息中的其中一个所述kafka测试接收消息的选择指令,将选择的其中一个所述kafka测试接收消息记录为下一个kafka消息测试数据,并生成所述下一个kafka消息测试数据的测试请求;或
接收对所述测试界面应用程序中展示的所有所述kafka测试接收消息中的其中一个所述kafka测试接收消息的修改指令,获取所述修改指令中的修改参数,根据所述修改参数对选择的其中一个所述kafka测试接收消息进行修改,并将修改之后的所述kafka测试接收消息记录为下一个kafka消息测试数据,并生成所述下一个kafka消息测试数据的测试请求。
3.如权利要求1所述的kafka消息的测试方法,其特征在于,所述通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据,包括:
获取所述kafka测试模板;所述kafka测试模板包括待替换主题和待替换测试请求信息;
在所述kafka测试模板中,将所述kafka消息测试数据中的主题覆盖所述kafka测试模板中的待替换主题,同时将所述kafka消息测试数据中的测试请求信息覆盖所述kafka测试模板中的待替换测试请求信息,并将覆盖后的所述kafka测试模板标记为所述kafka测试数据。
4.一种kafka消息的测试装置,其特征在于,包括:
接收模块,用于接收来自测试界面应用程序的kafka消息测试数据的测试请求;所述kafka消息测试数据包括主题和测试请求信息;
转换模块,用于通过预设的kafka测试模板,将所述主题和所述测试请求信息转换成kafka测试数据;
第一发送模块,用于根据预设的测试要求并通过测试通用接口将所述kafka测试数据发送至预设的kafka集群;
接收模块,用于接收所述kafka集群反馈的kafka测试接收消息,根据所述主题将所述kafka测试接收消息存储至数据库,并在所述数据库中将所述kafka测试接收消息与所述主题关联;
反馈模块,用于将所述数据库中与所述主题关联的所有所述kafka测试接收消息发送至所述测试界面应用程序进行展示;
确认模块,用于在所述测试界面应用程序中展示的所有所述kafka测试接收消息中包含与所述kafka消息测试数据的主题和测试请求信息一致的所述kafka测试接收消息时,确认对所述kafka消息测试数据的测试成功;
所述第一发送模块还用于:
根据所述主题获取配置参数,在jmeter工具中根据所述配置参数配置所述测试通用接口;
所述第一发送模块,包括:
获取模块,用于获取所述测试要求中包含的测试参数;所述测试参数为要求重复发送所述kafka测试数据的时间段;
第二发送模块,用于将所述测试参数和所述kafka消息发送测试数据输入所述jmeter工具中,所述jmeter工具根据所述测试参数将所述kafka消息发送测试数据通过所述测试通用接口发送至所述kafka集群;所述测试通用接口包含预设的主题生产者,通过所述主题生产者发送主题消息至所述kafka集群。
5.如权利要求4所述的kafka消息的测试装置,其特征在于,所述转换模块,包括:
获取模板模块,用于所述kafka测试模板;所述kafka测试模板包括待替换主题和待替换测试请求信息;
生成模块,用于在所述kafka测试模板中,将所述kafka消息测试数据中的主题覆盖所述kafka测试模板中的待替换主题,同时将所述kafka消息测试数据中的测试请求信息覆盖所述kafka测试模板中的待替换测试请求信息,并将覆盖后的所述kafka测试模板标记为所述kafka消息发送测试数据。
6.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述kafka消息的测试方法。
7.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述kafka消息的测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910801855.7A CN110597714B (zh) | 2019-08-28 | 2019-08-28 | kafka消息的测试方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910801855.7A CN110597714B (zh) | 2019-08-28 | 2019-08-28 | kafka消息的测试方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110597714A CN110597714A (zh) | 2019-12-20 |
CN110597714B true CN110597714B (zh) | 2023-07-04 |
Family
ID=68855924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910801855.7A Active CN110597714B (zh) | 2019-08-28 | 2019-08-28 | kafka消息的测试方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110597714B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631884A (zh) * | 2020-12-18 | 2021-04-09 | 平安普惠企业管理有限公司 | 基于数据同步的压测方法、装置、计算机设备及存储介质 |
CN113132183B (zh) * | 2021-04-20 | 2022-09-23 | 北京天融信网络安全技术有限公司 | 一种数据传输测试的方法、装置、电子设备及介质 |
CN113282499B (zh) * | 2021-05-31 | 2024-02-09 | 长沙市到家悠享家政服务有限公司 | 创建测试数据的方法、系统、设备及介质 |
CN113254187A (zh) * | 2021-06-23 | 2021-08-13 | 京东科技控股股份有限公司 | 测试数据的生成方法、装置、电子设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3062228A1 (en) * | 2015-02-25 | 2016-08-31 | Rovio Entertainment Ltd | Lightweight functional testing |
CN109739741A (zh) * | 2018-11-26 | 2019-05-10 | 北京网众共创科技有限公司 | 系统测试方法和装置、存储介质及电子装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050089174A (ko) * | 2004-03-04 | 2005-09-08 | 삼성전자주식회사 | 대용량 분산 네트워킹 시스템의 시험 장치 및 방법 |
CN107122297B (zh) * | 2017-04-18 | 2020-10-27 | 上海雷腾软件股份有限公司 | 用于测试接口的请求消息生成的方法及设备 |
CN109495334B (zh) * | 2017-09-13 | 2021-05-28 | 杭州海康威视系统技术有限公司 | 一种测试方法及装置 |
CN109933522B (zh) * | 2019-01-25 | 2022-04-22 | 畅捷通信息技术股份有限公司 | 一种自动化用例的测试方法、测试系统及存储介质 |
-
2019
- 2019-08-28 CN CN201910801855.7A patent/CN110597714B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3062228A1 (en) * | 2015-02-25 | 2016-08-31 | Rovio Entertainment Ltd | Lightweight functional testing |
CN109739741A (zh) * | 2018-11-26 | 2019-05-10 | 北京网众共创科技有限公司 | 系统测试方法和装置、存储介质及电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110597714A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110597714B (zh) | kafka消息的测试方法、装置、计算机设备及存储介质 | |
US11615651B2 (en) | Remote automobile diagnostic method and apparatus, mobile terminal, electronic device and server | |
CN107766900B (zh) | 一种打印条码的方法、系统及计算设备 | |
WO2020186783A1 (zh) | 数据导入方法、装置、计算机设备和存储介质 | |
CN111159049A (zh) | 接口自动化测试方法及系统 | |
JP5701458B1 (ja) | 作画装置および制御システム | |
CN110750222A (zh) | 打印方法、装置、计算机设备和存储介质 | |
CN110764998B (zh) | 基于Django框架的数据比对方法、装置、设备及存储介质 | |
CN112100078B (zh) | 一种生成接口测试用例的方法、装置及设备 | |
CN108900627B (zh) | 一种网络请求方法、终端装置及存储介质 | |
US10579915B2 (en) | Method and device for initializing two-dimensional code | |
CN110750443A (zh) | 网页测试的方法、装置、计算机设备及存储介质 | |
CN107798078B (zh) | 看板数据展示方法、装置、计算机设备和存储介质 | |
CN111752789B (zh) | 压力测试方法、计算机设备及计算机可读存储介质 | |
US20230061780A1 (en) | Automated end-to-end testing platform with dynamic container configuration | |
WO2022134582A1 (zh) | 浏览器页面测试方法、装置、计算机设备及存储介质 | |
CN110377292A (zh) | 服务配置方法、装置、计算机设备及存储介质 | |
JP2020052938A (ja) | 操作盤管理システム | |
KR20160004030A (ko) | 단말 기기의 시험 장치, 시스템 및 제어 방법 | |
CN105490914A (zh) | 一种led自动化服务器及交互方法 | |
CN113626392A (zh) | 文档数据更新的方法和装置、电子设备和存储介质 | |
CN112035360A (zh) | 中间件测试方法、装置、计算机设备及可读存储介质 | |
CN106850546B (zh) | 一种雷达终端的地图模块软件组织方法 | |
CN110647465A (zh) | 一种测试数据录入方法、装置及计算机可读存储介质 | |
CN111385837A (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 |