CN116684333A - 基于通信协议的自动化测试方法、装置、设备及存储介质 - Google Patents
基于通信协议的自动化测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116684333A CN116684333A CN202310477538.0A CN202310477538A CN116684333A CN 116684333 A CN116684333 A CN 116684333A CN 202310477538 A CN202310477538 A CN 202310477538A CN 116684333 A CN116684333 A CN 116684333A
- Authority
- CN
- China
- Prior art keywords
- communication protocol
- test
- tested
- target
- determining
- 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
Links
- 238000004891 communication Methods 0.000 title claims abstract description 310
- 238000010998 test method Methods 0.000 title claims abstract description 30
- 238000012360 testing method Methods 0.000 claims abstract description 277
- 238000000034 method Methods 0.000 claims abstract description 49
- 230000008569 process Effects 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 11
- 230000033772 system development Effects 0.000 abstract description 33
- 230000006870 function Effects 0.000 description 35
- 238000010586 diagram Methods 0.000 description 7
- 238000011161 development Methods 0.000 description 5
- 230000018109 developmental process Effects 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000009616 inductively coupled plasma Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000001483 mobilizing effect Effects 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 238000013112 stability test Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 235000010384 tocopherol Nutrition 0.000 description 1
- 235000019731 tricalcium phosphate Nutrition 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
-
- 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/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及自动化测试领域,公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述方法包括基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
Description
技术领域
本申请涉及自动化测试领域,尤其涉及一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质。
背景技术
在计算机通信领域,随着各种操作系统的不断发展与广泛应用,对于接口的设计以及质量保证也在不断提高,因此对于API(Application Programming Interface,应用程序编程接口)的测试也要求更多的场景。目前很多的应用场景都依赖于各类通信方式,由此对通信协议的API测试由为重要,通信协议的API测试的可靠性以及准确性、全面性都在不同的方面影响其他功能与特性的正常使用,如系统升级包特性依赖于MQTT(MessageQueuing Telemetry Transport,消息队列遥测传输)协议上,日志上传云端依赖于TCP(Transmission Control Protocol,传输控制协议)协议等系统功能。
在当前的系统开发中,致力于通过通信方式或者远端遥感方式解放用户的现场操作以及节约物理资源的使用,通过该方式必须保证能够通信的接口功能的可靠性以实现长时间通信。因此,如何提高系统开发中通信接口功能的可靠性成为目前亟待解决的技术问题。
发明内容
本申请提供了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,以提高系统开发中通信接口功能的可靠性。
第一方面,本申请提供了一种基于通信协议的自动化测试方法,所述基于通信协议的自动化测试方法包括:
基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
进一步地,基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议之前,包括:
预先获取至少一种通信协议,并通过通信协议调试工具将所述至少一种通信协议整合并建立预设通信协议库。
进一步地,基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议之后,包括:
若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议。
进一步地,若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议,包括:
响应于所述提示信号,通过通信协议调试工具调试所述API的测试环境参数;
基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项;
向所述预设通信协议库中添加所述配置项对应的通信协议。
进一步地,基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项,包括:
通过所述待测试设备运行所述测试结果信息对应的测试脚本,生成执行结果;
在所述执行结果满足预设执行条件时,将所述测试结果信息对应的测试脚本确定为所述目标测试脚本并作为所述配置项。
进一步地,基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试之后,包括:
生成所述待测试设备执行所述目标测试脚本的测试过程的过程日志;
在所述测试过程中发生错误时,发出测试错误信号并针对所述过程日志中的错误部分进行标注。
进一步地,预设通信协议库包括传输控制协议TCP、用户数据报协议UDP、消息队列遥测传输协议MQTT、超文本传输协议HTTP。
第二方面,本申请还提供了一种基于通信协议的自动化测试装置,所述基于通信协议的自动化测试装置包括:
通信协议确定模块,用于基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
测试脚本执行模块,用于基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
第三方面,本申请还提供了一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如上述的基于通信协议的自动化测试方法。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如上述的基于通信协议的自动化测试方法。
本申请公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请的第一实施例提供的一种基于通信协议的自动化测试方法的示意流程图;
图2为本申请的第二实施例提供的一种基于通信协议的自动化测试方法的示意流程图;
图3为本申请的第三实施例提供的一种基于通信协议的自动化测试方法的示意流程图;
图4为本申请的第四实施例提供的一种基于通信协议的自动化测试方法的示意流程图;
图5为本申请的第五实施例提供的一种基于通信协议的自动化测试方法的示意流程图;
图6为本申请的第六实施例提供的一种基于通信协议的自动化测试方法的示意流程图;
图7为本申请的实施例提供的一种基于通信协议的自动化测试装置的示意性框图;
图8为本申请的实施例提供的一种计算机设备的结构示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本申请的实施例提供了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质。其中,该基于通信协议的自动化测试方法可以应用于服务器中,通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。其中,该服务器可以为独立的服务器,也可以为服务器集群。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请的第一实施例提供的一种基于通信协议的自动化测试方法的示意流程图。该基于通信协议的自动化测试方法可应用于服务器中,用于通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
如图1所示,该基于通信协议的自动化测试方法具体包括步骤S10至步骤S20。
步骤S10、基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
步骤S20、基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
具体实施例中,在执行测试工作的时候,最理想的状态是机器能够自动执行预设好的脚本。一般情况下,在执行测试时的流程是,将脚本打包成应用程序推送到开发板上,开发版会自动执行并输出日志,可以根据日志判断结果。但是在需要和服务器/客户端通信的情况下,由于需要在服务器端/客户端进行操作,导致无法自动化执行。因此这个软件的测试模式就相当于能够使其在执行测试任务时,能够自动进行操作(根据设定好的参数判断结果并返回回开发板等)。
基于OHOS的通信协议API测试进行框架开发,为了尽可能地更多的覆盖通信协议,给予具有双端交互功能的协议接口测试提供支撑,同时除了内置多种常用协议外,如TCP(Transmission Control Protocol,传输控制协议)、UDP(User Datagram Protocol,用户数据报协议)、MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)、Websocket(套接字)等,还可以支持协议扩展,可以通过插件或者内置扩展辅助工具等方式添加要调试的协议。在本调试工具测试人员可以进行通信协议的自定义参数设置测试,同时也可以定义自动应答机制给自动化脚本式测试以及稳定性测试提供可以实现的渠道。
本实施例公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
请参阅图2,图2是本申请的第二实施例提供的一种基于通信协议的自动化测试方法的示意流程图。该基于通信协议的自动化测试方法可应用于服务器中,用于通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
基于图1所示实施例,如图2所示,步骤S10之前,具体包括步骤S01。
步骤S01、预先获取至少一种通信协议,并通过通信协议调试工具将所述至少一种通信协议整合并建立预设通信协议库。
具体实施例中,针对操作系统的API测试/功能测试工作中可能涉及到的通信协议,基于对目前已有的测试工具的改进提升,结合当前测试工作的实际情况以及使用的IDE(Integrated Development Environment,集成开发环境)中测试脚本运行方式与测试设备的运行特点,提出的可扩展的通信协议调试工具,具有支持协议多、可调试的协议配置项较全、可扩展等特点。
考虑到在不同操作系统的API测试工作中会涉及到多种端对端通信协议,因此本工具将尽可能地覆盖更多的通信协议,将其整合在一起,以便测试和调试工作更够高效率地进行。工具将整合TCP、UDP、mqtt、http等不同层级的端到端通信协议。
本实施例公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括预先获取至少一种通信协议,并通过通信协议调试工具将所述至少一种通信协议整合并建立预设通信协议库;基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。通过上述方式,本申请首先将各通信协议整合为通信协议库,根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
请参阅图3,图3是本申请的第三实施例提供的一种基于通信协议的自动化测试方法的示意流程图。该基于通信协议的自动化测试方法可应用于服务器中,用于通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
基于图1所示实施例,如图3所示,步骤S10之后,具体包括步骤S11。
步骤S11、若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议。
具体实施例中,本工具除集成了常用通讯协议外,还实现了对于每一个协议下的详细配置项的支持。如TCP协议,除了支持基本的链接配置如地址、端口、超时时间,以及发送请求的参数如发送的数据之外,还支持对字符编码的配置,当作为客户端向服务器发送数据时,此参数为可配置项;当作为服务器接收调试中的设备端发来的数据时,可以将接收到的数据以及设备端的字符编码参数显示在界面中,以便测试人员对参数的验证。
更多的,对于TCP等协议,还将支持更加详细的属性设置,如是否保持连接、是否为OOB(Out of Band,带外数据)内联、TCPSocket连接是否无时延、socket是否继续逗留、接收/发送缓冲区大小、套接字超时时间等。
本实施例公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试;若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
请参阅图4,图4是本申请的第四实施例提供的一种基于通信协议的自动化测试方法的示意流程图。该基于通信协议的自动化测试方法可应用于服务器中,用于通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
基于图3所示实施例,如图4所示,步骤S11具体包括步骤S111至步骤S113。
步骤S111、响应于所述提示信号,通过通信协议调试工具调试所述API的测试环境参数;
步骤S112、基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项;
步骤S113、向所述预设通信协议库中添加所述配置项对应的通信协议。
具体实施例中,本工具为了满足测试过程中对不同通信协议以及不同配置项的测试需求,力求将OHOS中涉及到的所有协议和配置项都集成到一起,然而这几乎是不可能的事。由于OS的修改和更新,对各个协议的修改和增加也必定是时常存在的。当上述情况发生时,测试工具将不能完全和待测协议适配。
本实施例公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括响应于所述提示信号,通过通信协议调试工具调试所述API的测试环境参数;基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项;向所述预设通信协议库中添加所述配置项对应的通信协议。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
请参阅图5,图5是本申请的第五实施例提供的一种基于通信协议的自动化测试方法的示意流程图。该基于通信协议的自动化测试方法可应用于服务器中,用于通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
基于图4所示实施例,如图5所示,步骤S112具体包括步骤S1121至步骤S1122。
步骤S1121、通过所述待测试设备运行所述测试结果信息对应的测试脚本,生成执行结果;
步骤S1122、在所述执行结果满足预设执行条件时,将所述测试结果信息对应的测试脚本确定为所述目标测试脚本并作为所述配置项。
具体实施例中,本工具的扩展支持两种模式,一种为插件模式。工具将提供较精细的服务接口,便于开发者根据当前测试的需求开发协议测试插件。对于插件模式,不仅可以扩展协议和其配置项,还可以在后续通过开放更多接口的方式来增加插件的丰富性,以使测试工作更加方便高效,提高工具的各个通信协议的适应能力。为了实现插件模式,还将定义相应的扩展契约,其描述了插件应该如何设计以便于主程序发现。并将通过插件管理模块来发现、维护插件。插件通过实现主程序规定的扩展契约,标明自己的身份,并接收来自主程序的事件响应。通过调动主程序提供的服务,实现和主程序的交互。插件模式可以用于较为复杂、自定义程度高的协议。
另外一种扩展模式为通过内置的扩展工具添加的方式。此种方式通过“添加向导”引导开发者对协议/配置项进行扩展。首先抽象出常用通信协议的交互方式,将其设计成一套引导流程。开发者将根据引导流程逐步添加数据格式、通信内容、应答方式等配置,配置完毕后工具将其整合成完整的可调式的协议。
本实施例公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括通过所述待测试设备运行所述测试结果信息对应的测试脚本,生成执行结果;在所述执行结果满足预设执行条件时,将所述测试结果信息对应的测试脚本确定为所述目标测试脚本并作为所述配置项。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
请参阅图6,图6是本申请的第六实施例提供的一种基于通信协议的自动化测试方法的示意流程图。该基于通信协议的自动化测试方法可应用于服务器中,用于通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
基于图1所示实施例,如图6所示,步骤S20之后,包括步骤S21至步骤S22。
步骤S21、生成所述待测试设备执行所述目标测试脚本的测试过程的过程日志;
步骤S22、在所述测试过程中发生错误时,发出测试错误信号并针对所述过程日志中的错误部分进行标注。
具体实施例中,本工具能够将通信协议的底层操作过程直观地呈现在界面之上,便于理解协议的内部运作,以及定位可能出现的错误点。
本实施例公开了一种基于通信协议的自动化测试方法、装置、计算机设备及存储介质,所述基于通信协议的自动化测试方法包括生成所述待测试设备执行所述目标测试脚本的测试过程的过程日志;在所述测试过程中发生错误时,发出测试错误信号并针对所述过程日志中的错误部分进行标注。通过上述方式,本申请通过根据待测试设备的API接口与包括多种通信协议的通信协议库进行匹配,确定对应的目标通信协议,并根据目标通信协议确定测试脚本,通过待测试设备自动执行测试脚本以实现自动化测试,提高了系统开发中通信接口功能的可靠性,解决了系统开发中通信接口功能的可靠性低的问题。
基于上述全部实施例,本实施例中,所述预设通信协议库包括传输控制协议TCP、用户数据报协议UDP、消息队列遥测传输协议MQTT、超文本传输协议HTTP。
请参阅图7,图7是本申请的实施例提供一种基于通信协议的自动化测试装置的示意性框图,该基于通信协议的自动化测试装置用于执行前述的基于通信协议的自动化测试方法。其中,该基于通信协议的自动化测试装置可以配置于服务器。
如图7所示,该基于通信协议的自动化测试装置400,包括:
通信协议确定模块10,用于基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
测试脚本执行模块20,用于基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
进一步地,所述基于通信协议的自动化测试装置还包括:
通讯协议库建立模块,用于预先获取至少一种通信协议,并通过通信协议调试工具将所述至少一种通信协议整合并建立预设通信协议库。
进一步地,所述基于通信协议的自动化测试装置还包括:
变更配置项模块,用于若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议。
进一步地,所述变更配置项模块包括:
测试环境参数调试单元,用于响应于所述提示信号,通过通信协议调试工具调试所述API的测试环境参数;
配置项确定单元,用于基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项;
通信协议新增单元,用于向所述预设通信协议库中添加所述配置项对应的通信协议。
进一步地,所述配置项确定单元包括:
执行结果生成子单元,用于通过所述待测试设备运行所述测试结果信息对应的测试脚本,生成执行结果;
配置项确定子单元,用于在所述执行结果满足预设执行条件时,将所述测试结果信息对应的测试脚本确定为所述目标测试脚本并作为所述配置项。
进一步地,所述基于通信协议的自动化测试装置还包括:
过程日志生成模块,用于生成所述待测试设备执行所述目标测试脚本的测试过程的过程日志;
错误标注模块,用于在所述测试过程中发生错误时,发出测试错误信号并针对所述过程日志中的错误部分进行标注。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和各模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上述的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图8所示的计算机设备上运行。
请参阅图8,图8是本申请的实施例提供的一种计算机设备的结构示意性框图。该计算机设备可以是服务器。
参阅图8,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种基于通信协议的自动化测试方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种基于通信协议的自动化测试方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
在一个实施例中,基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议之前,用于实现:
预先获取至少一种通信协议,并通过通信协议调试工具将所述至少一种通信协议整合并建立预设通信协议库。
在一个实施例中,基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议之后,用于实现:
若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议。
在一个实施例中,若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议,用于实现:
响应于所述提示信号,通过通信协议调试工具调试所述API的测试环境参数;
基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项;
向所述预设通信协议库中添加所述配置项对应的通信协议。
在一个实施例中,基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项,用于实现:
通过所述待测试设备运行所述测试结果信息对应的测试脚本,生成执行结果;
在所述执行结果满足预设执行条件时,将所述测试结果信息对应的测试脚本确定为所述目标测试脚本并作为所述配置项。
在一个实施例中,基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试之后,用于实现:
生成所述待测试设备执行所述目标测试脚本的测试过程的过程日志;
在所述测试过程中发生错误时,发出测试错误信号并针对所述过程日志中的错误部分进行标注。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请实施例提供的任一项基于通信协议的自动化测试方法。
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于通信协议的自动化测试方法,其特征在于,所述方法包括:
基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
2.根据权利要求1所述的基于通信协议的自动化测试方法,其特征在于,所述基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议之前,包括:
预先获取至少一种通信协议,并通过通信协议调试工具将所述至少一种通信协议整合并建立预设通信协议库。
3.根据权利要求1所述的基于通信协议的自动化测试方法,其特征在于,所述基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议之后,包括:
若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议。
4.根据权利要求3所述的基于通信协议的自动化测试方法,其特征在于,所述若所述预设通信协议库中不存在与所述API相匹配的通信协议,则发出提示信号并变更配置项以新增所述API对应的通信协议,包括:
响应于所述提示信号,通过通信协议调试工具调试所述API的测试环境参数;
基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项;
向所述预设通信协议库中添加所述配置项对应的通信协议。
5.根据权利要求4所述的基于通信协议的自动化测试方法,其特征在于,所述基于测试指令与所述测试环境参数,接收所述待测试设备的测试结果信息,并在所述测试结果信息满足预设条件时,根据所述测试环境参数确定所述配置项,包括:
通过所述待测试设备运行所述测试结果信息对应的测试脚本,生成执行结果;
在所述执行结果满足预设执行条件时,将所述测试结果信息对应的测试脚本确定为所述目标测试脚本并作为所述配置项。
6.根据权利要求1所述的基于通信协议的自动化测试方法,其特征在于,所述基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试之后,包括:
生成所述待测试设备执行所述目标测试脚本的测试过程的过程日志;
在所述测试过程中发生错误时,发出测试错误信号并针对所述过程日志中的错误部分进行标注。
7.根据权利要求1至6任一项所述的基于通信协议的自动化测试方法,其特征在于,所述预设通信协议库包括传输控制协议TCP、用户数据报协议UDP、消息队列遥测传输协议MQTT、超文本传输协议HTTP。
8.一种基于通信协议的自动化测试装置,其特征在于,包括:
通信协议确定模块,用于基于待测试终端的应用程序编程接口API,在预设通信协议库中确定对应的目标通信协议;
测试脚本执行模块,用于基于所述目标通信协议,确定对应的目标测试脚本,并通过所述待测试终端执行所述目标测试脚本以实现自动化测试。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如权利要求1至7中任一项所述的基于通信协议的自动化测试方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如权利要求1至7中任一项所述的基于通信协议的自动化测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310477538.0A CN116684333A (zh) | 2023-04-26 | 2023-04-26 | 基于通信协议的自动化测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310477538.0A CN116684333A (zh) | 2023-04-26 | 2023-04-26 | 基于通信协议的自动化测试方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116684333A true CN116684333A (zh) | 2023-09-01 |
Family
ID=87782621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310477538.0A Pending CN116684333A (zh) | 2023-04-26 | 2023-04-26 | 基于通信协议的自动化测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116684333A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117170350A (zh) * | 2023-11-02 | 2023-12-05 | 国汽(北京)智能网联汽车研究院有限公司 | 服务的测试方法、装置、电子设备和存储介质 |
-
2023
- 2023-04-26 CN CN202310477538.0A patent/CN116684333A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117170350A (zh) * | 2023-11-02 | 2023-12-05 | 国汽(北京)智能网联汽车研究院有限公司 | 服务的测试方法、装置、电子设备和存储介质 |
CN117170350B (zh) * | 2023-11-02 | 2024-03-22 | 国汽(北京)智能网联汽车研究院有限公司 | 服务的测试方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11870673B2 (en) | Intercepting and examining a packet header or trailer | |
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
US8843895B2 (en) | Debugger connection | |
US20240064058A1 (en) | Implementation of compliance settings by a mobile device for compliance with a configuration scenario | |
CN106325847B (zh) | 基于iOS平台获取应用程序功能的方法和装置 | |
CN110119350B (zh) | 软件开发工具包测试方法、装置和设备及计算机存储介质 | |
US10404568B2 (en) | Agent manager for distributed transaction monitoring system | |
CN108804313B (zh) | 一种远程调试程序的方法、装置和服务器 | |
CN116684333A (zh) | 基于通信协议的自动化测试方法、装置、设备及存储介质 | |
CN111737137A (zh) | 接口测试数据生成方法、装置、主机及存储介质 | |
CN113590595A (zh) | 一种数据库多写方法、装置及相关设备 | |
CN114237498A (zh) | 一种云原生存储数据卷的快照生成方法与系统 | |
KR100664180B1 (ko) | 이동 통신 단말기의 데이터 원격 다운로드 시스템 및 방법 | |
CN113032224A (zh) | 一种信息采集方法、装置、电子设备及可读存储介质 | |
CN112181822A (zh) | 一种测试方法和应用程序的启动耗时测试方法 | |
US8806435B2 (en) | Remote logging mechanism | |
CN112416698B (zh) | 监控系统的扩展方法及装置、存储介质及电子设备 | |
CN114090074A (zh) | 运行环境的配置方法和装置、存储介质及电子装置 | |
CN113656322A (zh) | 数据处理方法、装置、电子设备及计算机存储介质 | |
CN113515299A (zh) | 软件开发工具包sdk热升级方法、装置、设备及存储介质 | |
CN112433938A (zh) | 移动端应用测试的方法和装置 | |
CN112565398B (zh) | Gfs数据下载方法、装置、电子设备以及存储介质 | |
CN112118567A (zh) | 设备升级方法、电子设备和介质 | |
US20170123760A1 (en) | Code Correction During a User Session in a Distributed Business Transaction | |
US20170123818A1 (en) | Dynamic Configuration of Native Functions to Intercept |
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 |