CN108075945A - 一种应用测试方法及装置 - Google Patents
一种应用测试方法及装置 Download PDFInfo
- Publication number
- CN108075945A CN108075945A CN201611040754.5A CN201611040754A CN108075945A CN 108075945 A CN108075945 A CN 108075945A CN 201611040754 A CN201611040754 A CN 201611040754A CN 108075945 A CN108075945 A CN 108075945A
- Authority
- CN
- China
- Prior art keywords
- protocol message
- protocol
- tested
- application
- type
- 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.)
- Granted
Links
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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种应用测试方法及装置,所述方法包括:接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器。对协议消息进行解析后,得到协议消息中携带的协议消息ID。在预先设置的待测试协议消息列表中,查找与协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系。根据所述控制策略,对所述协议消息进行处理。显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。本发明通过精确对应用中各个协议消息进行测试,完成整个应用的弱网测试,利用本发明的应用测试方法能够确定应用测试时出现问题的具体原因,得到更精确的测试结果。
Description
技术领域
本发明涉及数据处理领域,具体涉及一种应用测试方法及装置。
背景技术
在一款软件产品面市之前,为了保证产品的质量,需要对其进行各方面的质量测试。弱网测试是一项基本的应用测试项目,目的是测试应用处于弱网连接时的各种表现,例如在网络发生抖动时是否会出现问题等。
现有的应用测试产品中,需要针对真实网络状况搭建网络共享环境,如共享wifi热点等,在搭建的网络共享环境中对应用进行测试,确定应用在各种网络状态下是否出现问题。
但是,现有的应用测试产品中只能从整个应用的角度对其进行测试,也就是说,最终得到的测试结果只能局限于某种网络状态下该应用是否出现问题,并不能得到更精确的测试结果。
发明内容
本发明提供了一种应用测试方法及装置,通过对应用中各个协议消息进行测试,确定在测试过程中应用出现问题的具体原因,得到更精确的应用测试结果。
本发明实施例提供了一种应用测试方法,所述方法包括:
接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器;
对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID;
在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系;
根据所述控制策略,对所述协议消息进行处理;
显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
优选地,所述方法还包括:
对所述协议消息的报文头进行解析,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型。
优选地,所述根据所述控制策略,对所述协议消息进行处理,包括:
当所述控制策略为丢包策略时,将所述协议消息丢弃;
当所述控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间;利用计时器开始计时,并在计时过程中,利用所述协议消息的目的IP地址、端口号、协议类型和数据包类型对所述协议消息进行重组;当计时达到所述延迟时间时,发送重组后的所述协议消息。
优选地,所述方法还包括:
当在所述待测试协议消息列表中未查找到所述协议消息ID时,利用所述协议消息的目的IP地址、端口号和协议类型对所述协议消息进行重组;
发送重组后的所述协议消息。
优选地,所述方法还包括:
预先创建虚拟网络接口,所述虚拟网络接口用于接收来自所述待测试应用的客户端的协议消息,以及向所述待测试应用的客户端发送协议消息。
优选地,所述方法还包括:
如果所述协议消息的协议类型为TCP协议,则判断所述协议消息的数据包类型是否为PSH包,如果是,则确定所述协议消息用于传输数据;
如果所述协议消息的协议类型为UDP协议,则确定所述协议消息用于传输数据。
本发明还提供了一种应用测试装置,所述装置包括:
接收模块,用于接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器;
第一解析模块,用于对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID;
查找模块,用于在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系;
处理模块,用于根据所述控制策略,对所述协议消息进行处理;
显示模块,用于显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
优选地,所述装置还包括:
第二解析模块,用于对所述协议消息的报文头进行解析,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型。
优选地,所述处理模块,包括:
丢弃子模块,用于当所述控制策略为丢包策略时,将所述协议消息丢弃;
获取子模块,用于当所述控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间;
计时子模块,用于利用计时器开始计时;
重组子模块,用于在计时过程中,利用所述协议消息的目的IP地址、端口号、协议类型和数据包类型对所述协议消息进行重组;
发送子模块,用于当计时达到所述延迟时间时,发送重组后的所述协议消息。
优选地,所述装置还包括:
重组模块,用于当在所述待测试协议消息列表中未查找到所述协议消息ID时,利用所述协议消息的目的IP地址、端口号和协议类型对所述协议消息进行重组;
发送模块,用于发送重组后的所述协议消息。
优选地,所述装置还包括:
创建模块,用于预先创建虚拟网络接口,所述虚拟网络接口用于接收来自所述待测试应用的客户端的协议消息,以及向所述待测试应用的客户端发送协议消息。
优选地,所述装置还包括:
判断模块,用于在所述协议消息的协议类型为TCP协议时,判断所述协议消息的数据包类型是否为PSH包;
第一确定模块,用于在所述判断模块的结果为是时,确定所述协议消息用于传输数据;
第二确定模块,用于在所述协议消息的协议类型为UDP协议时,确定所述协议消息用于传输数据。
本发明提供了一种应用测试方法,首先,接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器。对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID。其次,在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系。根据所述控制策略,对所述协议消息进行处理。最后,显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。本发明通过精确对应用中各个协议消息进行测试,完成整个应用的弱网测试,利用本发明的应用测试方法能够确定应用测试时出现问题的具体原因,得到更精确的测试结果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种应用测试方法流程图;
图2为本发明提供的一种网络游戏应用的测试方法信息交互图;
图3为本发明提供的一种应用测试装置结构示意图;
图4为本发明提供的客户端的部分结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参考图1,为本发明实施例提供的一种应用测试方法流程图,所述方法具体可以包括:
S101:接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器。
本发明实施例中,通过创建VpnServices预先建立虚拟网络接口,将待测试应用的各个网络消息映射到所述虚拟网络接口,并接收返回的文件描述符,所述文件描述符中包括所述虚拟网络接口的地址。本发明实施例通过所述文件描述符标识的虚拟网络接口读取到协议消息,模拟所述待测试应用的服务器与客户端进行通信,以及模拟所述待测试应用的客户端与服务器进行通信。本发明实施例可以在接收到来自服务器的协议消息并对其进行处理后,写回所述虚拟网络接口,通过所述虚拟网络接口向所述待测试应用的客户端发送协议消息。总之,所述虚拟网络接口既可以作为与所述待测试应用的客户端进行交互的通道,也可以作为与所述待测试应用的服务器进行交互的通道。
实际应用中,在接收到任一协议消息后,首先解析所述协议消息的报文头,确定所述协议消息的协议类型。如果所述协议消息的协议类型为UDP协议,则确定所述协议消息用于传输数据;如果所述协议消息的协议类型为TCP协议,则需要进一步确定所述协议消息的数据包类型是否为PSH包,如果是,则确定所述协议消息用于传输数据。值得注意的是,本发明实施例提供的应用测试方法能够处理用于数据传输的协议消息。
另外,本发明实施例在对所述协议消息的报文头进行解析时还可以获取所述协议消息的目的IP地址、端口号等,为了不影响对所述协议消息处理后的继续发送,在对所述协议消息的报文头进行解析后保存所述协议消息的目的IP地址、端口号等。
S102:对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID。
本发明实施例中,在接收到协议消息时,对所述协议消息进行解析,得到所述协议消息中携带的协议消息ID,所述协议消息ID用于唯一标识所述协议消息。
S103:在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系。
本发明实施例在进行应用测试之前,预先针对待测试应用进行待测试协议消息列表的配置。具体的,将所述待测试应用中需要进行测试的协议消息ID添加至所述待测试协议消息列表,并为所述协议消息配置控制策略。其中,为各个协议消息配置的控制策略包括但不限于丢包策略、延迟策略,根据应用测试需求,可以自由配置、修改控制策略。
实际应用中,在获取到所述协议消息ID后,在所述待测试协议消息列表中查找与所述协议消息ID具有对应关系的控制策略。
如果在所述待测试协议消息列表中未查找到与所述协议消息ID具有对应关系的控制策略,则说明所述协议消息不属于所述待测试应用中需要进行测试的协议消息。本发明实施例利用对所述协议消息的报文头进行解析时得到的目的IP地址、端口号和协议类型等,对所述协议消息进行重组,并发送重组后的协议消息。具体的,对于来自服务器的协议消息,在重组后将其写回至虚拟网络接口即可。
S104:根据所述控制策略,对所述协议消息进行处理。
本发明实施例中,在查找到与所述协议消息ID具有对应关系的控制策略后,根据所述控制策略对所述协议消息进行处理。
实际应用中,当与所述协议消息ID具有对应关系的控制策略为丢包策略时,将所述协议消息直接丢弃。
当与所述协议消息ID具有对应关系的控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间,并利用计时器开始计时。具体的,所述延迟策略中还可以设定随机延迟时间范围,随机生成延迟时间。
由于在达到延迟时间时,需要将所述协议消息进行转发,所以在计时器计时过程中,利用对所述协议消息的报文头进行解析时得到的目的IP地址、端口号和协议类型等,对所述协议消息进行重组。当计时达到所述延迟时间时,将重组后的协议消息进行发送。具体的,对于来自服务器的协议消息,在重组后将其写回至虚拟网络接口即可。
S105:显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
本发明实施例在处理所述协议消息的过程中,或者处理所述协议消息之后,显示所述协议消息ID。
由于对所述协议消息进行处理时,如丢弃或者延迟发送时,正在运行的待测试应用的运行状态可能出现问题,如卡机等。为了让用户获知出现这些问题的原因是对所述协议消息进行测试导致的,所以本发明实施例在前端显示当前正在测试的协议消息的协议消息ID,确定所述协议消息的测试结果。
实际应用中,用户可以通过触发预设保存按钮或截屏按钮,保存所述协议消息ID和正在运行的待测试应用的运行状态,以便所述待测试应用的开发人员可以依据保存的信息对所述待测试应用进行改进等。
本发明实施例提供的应用测试方法中,首先,接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器。对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID。其次,在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系。根据所述控制策略,对所述协议消息进行处理。最后,显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。与现有技术的应用测试方法相比,本发明实施例通过精确对应用中的各个协议消息进行测试,最终实现对应用在弱网环境中的测试,得到的测试结果更准确,能够准确定位测试中出现问题的原因。
一种应用场景中,本发明实施例的待测试应用可以为网络游戏应用,参考图2,为本发明实施例提供的一种网络游戏应用的测试方法信息交互图。所述方法包括:
S201:测试应用通过预设的虚拟网络接口接收用于网络游戏客户端与网络游戏服务器建立网络连接的协议消息,分别与所述网络游戏客户端和所述网络游戏服务器建立网络连接。
本发明实施例模拟网络游戏服务器,根据所述协议消息的协议类型(包括UDP协议和TCP协议)与所述网络游戏客户端建立网络连接。实际应用中,通过对所述协议消息的报文头进行解析,确定所述协议消息的协议类型、数据包类型等。如果所述协议消息的协议类型为TCP协议,则获取所述协议消息中的数据包类型,如果所述数据包类型为非PSH包(如SYN包),则说明所述协议消息用于客户端与服务器建立TCP网络连接。本发明实施例可以模拟所述待测试应用的服务器与客户端建立TCP网络连接,以及模拟所述待测试应用的客户端与服务器建立TCP网络连接。具体的,所述测试应用可以模拟网络游戏服务器通过三次握手与所述网络游戏客户端建立网络连接。如果所述协议消息的协议类型为UDP协议,则所述测试应用可以模拟所述待测试应用的服务器与客户端建立UDP网络连接,以及模拟所述待测试应用的客户端与服务器建立UDP网络连接,基于UDP协议的特点,所述协议消息也用于数据传输。
如果协议类型为TCP协议,数据包类型为PSH包,则表示所述协议消息用于数据传输,针对用于传输数据的协议消息,本发明实施例可以通过执行后续步骤对其进行测试。
本发明实施例中的网络游戏客户端应用于Android系统,本发明实施例预先利用Android系统中的VpnService基类创建一个虚拟网络接口,用于作为所述测试应用分别与所述网络游戏客户端和所述网络游戏服务器的通道。所述测试应用通过所述虚拟网络接口接收来自所述网络游戏客户端和所述网络游戏服务器的协议消息。
S202:所述测试应用接收来自所述网络游戏客户端的用于传输数据的协议消息。
S203:所述测试应用对所述协议消息进行解析,得到协议消息ID,同时通过解析所述协议消息的报文头,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型等。
S204:预先在所述测试应用中配置所述网络游戏中待测试协议消息列表,并在所述待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系。
本发明实施例中,用于测试所述网络游戏中协议消息的控制策略包括丢包策略、延迟策略等,具体的,在配置延迟策略时需要配置延迟时间。
S205:所述测试应用利用所述控制策略处理所述协议消息。
具体的,如果所述控制策略是丢包策略,则将所述协议消息丢弃,模拟所述网络游戏在弱网环境中丢包的场景。如果所述控制策略是延迟策略,则延迟后发送所述协议消息,模拟所述网络游戏在弱网环境中发生网络延迟的场景。具体的,在延迟后发送所述协议消息之前,利用解析得到的所述协议消息的目的IP地址、端口号等重组所述协议消息。
本发明实施例不仅可以对网络游戏客户端发往网络游戏服务器的协议消息进行测试,也可以对网络游戏服务器发往网络游戏客户端的协议消息进行测试。
S210:所述测试应用接收来自所述网络游戏服务器的协议消息。
S211:所述测试应用对所述协议消息进行解析,得到协议消息ID,同时通过解析所述协议消息的报文头,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型等。
S212:所述测试应用在所述待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略。
S213:所述测试应用利用所述控制策略处理所述协议消息,包括丢弃所述协议消息或者延迟发送重组后的所述协议消息。
实际应用中,由于对所述协议消息进行处理时,如丢弃或者延迟发送时,正在运行的网络游戏的运行状态可能出现问题,如卡机等。为了让用户获知出现这些问题的原因是对所述协议消息进行测试导致的,所以本发明实施例在前端显示当前正在测试的协议消息的协议消息ID,确定所述协议消息的测试结果。
本发明实施例提供的应用测试方法通过精确对应用中的各个协议消息进行测试,最终实现对应用在弱网环境中的测试,得到的测试结果更准确,能够准确定位测试中出现问题的原因。
在实际的使用场景中,用户预先在客户端安装所述测试应用,当用户启动所述测试应用时,系统会判断当前是否为首次启动所述测试应用,如果是首次启动,则系统首先申请VPN网络权限。当系统将VPN网络权限申请成功或者非首次启动时,通过创建VpnServices预先建立虚拟网络接口,并接收返回的文件描述符,用于标识所述虚拟网络接口。所述虚拟网络接口作为所述测试应用向客户端写入消息和从客户端读取消息的通道。然后,系统拉取终端内安装的所有应用以供用户选择待测试应用,用户选择待测试应用后,启动所述待测试应用。系统判断当前是否已经为所述待测试应用设置有待测试协议消息列表,如果存在则可以直接利用所述待测试协议消息列表;如果不存在或者需要对已有的待测试协议消息列表进行修改,则修改编辑所述待测试应用的待测试协议消息列表。实际测试过程中,在用户启动所述待测试应用后,进行所述待测试应用中的各种操作,以触发对应的测试场景。如果所述待测试应用中的某个测试场景出现问题,如卡机,则可以根据系统在屏幕上显示给用户的协议消息ID检查当前操作对应的协议消息,并按照所述协议消息ID确定所述待测试应用中的具体功能,以定位出所述待测试应用中的问题。
本发明实施例还提供了一种应用测试装置,参考图3,为本发明实施例提供的一种应用测试装置结构示意图,所述装置包括:
接收模块301,用于接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器;
第一解析模块302,用于对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID;
查找模块303,用于在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系;
处理模块304,用于根据所述控制策略,对所述协议消息进行处理;
显示模块305,用于显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
另外,所述装置还包括:
第二解析模块,用于对所述协议消息的报文头进行解析,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型。
优选地,所述处理模块,包括:
丢弃子模块,用于当所述控制策略为丢包策略时,将所述协议消息丢弃;
获取子模块,用于当所述控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间;
计时子模块,用于利用计时器开始计时;
重组子模块,用于在计时过程中,利用所述协议消息的目的IP地址、端口号、协议类型和数据包类型对所述协议消息进行重组;
发送子模块,用于当计时达到所述延迟时间时,发送重组后的所述协议消息。
具体的,所述装置还包括:
重组模块,用于当在所述待测试协议消息列表中未查找到所述协议消息ID时,利用所述协议消息的目的IP地址、端口号和协议类型对所述协议消息进行重组;
发送模块,用于发送重组后的所述协议消息。
另外,所述装置还包括:
创建模块,用于预先创建虚拟网络接口,所述虚拟网络接口用于接收来自所述待测试应用的客户端的协议消息,以及向所述待测试应用的客户端发送协议消息。
另外,所述装置还包括:
判断模块,用于在所述协议消息的协议类型为TCP协议时,判断所述协议消息的数据包类型是否为PSH包;
第一确定模块,用于在所述判断模块的结果为是时,确定所述协议消息用于传输数据;
第二确定模块,用于在所述协议消息的协议类型为UDP协议时,确定所述协议消息用于传输数据。
本发明提供的应用测试装置能够实现以下功能:接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器。对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID。在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系。根据所述控制策略,对所述协议消息进行处理。显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。本发明实施例提供的应用测试装置通过精确对应用中的各个协议消息进行测试,最终实现对应用在弱网环境中的测试,能够确定在应用测试过程中应用出现问题的具体原因,得到更精确的应用测试结果。
本发明实施例还提供了一种终端,如图4所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point ofSales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图4示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图4,手机包括:射频(Radio Frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图4中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图4对手机的各个构成部件进行具体的介绍:
RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将涉及上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE))、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元430可用于接收输入的数字或字符信息,以及产生与手机400的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元440可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图4中,触控面板431与显示面板441是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现手机的输入和输出功能。
手机400还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在手机移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路460、扬声器461,传声器462可提供用户与手机之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,传声器462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出处理器480处理后,经RF电路410以发送给比如另一手机,或者将音频数据输出至存储器420以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了WiFi模块470,但是可以理解的是,其并不属于手机400的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器480是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器480可包括一个或多个处理单元;优选的,处理器480可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器480中。
手机400还包括给各个部件供电的电源490(比如电池),优选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机400还可以包括摄像头、蓝牙模块等,在此不再赘述。
具体在本实施例中,终端中的处理器480会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器420中,并由处理器480来运行存储在存储器420中的应用程序,从而实现以下功能:
接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器;
对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID;
在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系;
根据所述控制策略,对所述协议消息进行处理;
显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
优选地,所述方法还包括:
对所述协议消息的报文头进行解析,得到所述协议消息的目的IP地址、端口号。
优选地,所述根据所述控制策略,对所述协议消息进行处理,包括:
当所述控制策略为丢包策略时,将所述协议消息丢弃;
当所述控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间;
利用计时器开始计时,并在计时过程中利用所述协议消息的目的IP地址、端口号对所述协议消息进行重组;
当计时达到所述延迟时间时,发送重组后的所述协议消息。
优选地,所述方法还包括:
当在所述待测试协议消息列表中未查找到所述协议消息ID时,利用所述协议消息的目的IP地址、端口号对所述协议消息进行重组;
发送重组后的所述协议消息。
优选地,所述方法还包括:
预先创建虚拟网络接口,所述虚拟网络接口用于接收来自所述待测试应用的客户端的协议消息,以及向所述待测试应用的客户端发送协议消息。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明实施例所提供的一种应用测试方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种应用测试方法,其特征在于,所述方法包括:
接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器;
对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID;
在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系;
根据所述控制策略,对所述协议消息进行处理;
显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
2.根据权利要求1所述的应用测试方法,其特征在于,所述方法还包括:
对所述协议消息的报文头进行解析,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型。
3.根据权利要求2所述的应用测试方法,其特征在于,所述根据所述控制策略,对所述协议消息进行处理,包括:
当所述控制策略为丢包策略时,将所述协议消息丢弃;
当所述控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间;利用计时器开始计时,并在计时过程中,利用所述协议消息的目的IP地址、端口号、协议类型和数据包类型对所述协议消息进行重组;当计时达到所述延迟时间时,发送重组后的所述协议消息。
4.根据权利要求2所述的应用测试方法,其特征在于,所述方法还包括:
当在所述待测试协议消息列表中未查找到所述协议消息ID时,利用所述协议消息的目的IP地址、端口号和协议类型对所述协议消息进行重组;
发送重组后的所述协议消息。
5.根据权利要求1所述的应用测试方法,其特征在于,所述方法还包括:
预先创建虚拟网络接口,所述虚拟网络接口用于接收来自所述待测试应用的客户端的协议消息,以及向所述待测试应用的客户端发送协议消息。
6.根据权利要求2所述的应用测试方法,其特征在于,所述方法还包括:
如果所述协议消息的协议类型为TCP协议,则判断所述协议消息的数据包类型是否为PSH包,如果是,则确定所述协议消息用于传输数据;
如果所述协议消息的协议类型为UDP协议,则确定所述协议消息用于传输数据。
7.一种应用测试装置,其特征在于,所述装置包括:
接收模块,用于接收任一用于传输数据的协议消息,所述协议消息来自正在运行的待测试应用的客户端或服务器;
第一解析模块,用于对所述协议消息进行解析后,得到所述协议消息中携带的协议消息ID;
查找模块,用于在预先设置的待测试协议消息列表中,查找与所述协议消息ID具有对应关系的控制策略,所述待测试协议消息列表中包括协议消息ID与控制策略的对应关系;
处理模块,用于根据所述控制策略,对所述协议消息进行处理;
显示模块,用于显示所述协议消息ID,以便用户能够结合所述正在运行的待测试应用的运行状态确定所述协议消息的测试结果。
8.根据权利要求7所述的应用测试装置,其特征在于,所述装置还包括:
第二解析模块,用于对所述协议消息的报文头进行解析,得到所述协议消息的目的IP地址、端口号、协议类型和数据包类型。
9.根据权利要求8所述的应用测试装置,其特征在于,所述处理模块,包括:
丢弃子模块,用于当所述控制策略为丢包策略时,将所述协议消息丢弃;
获取子模块,用于当所述控制策略为延迟策略时,获取所述延迟策略中包括的延迟时间;
计时子模块,用于利用计时器开始计时;
重组子模块,用于在计时过程中,利用所述协议消息的目的IP地址、端口号、协议类型和数据包类型对所述协议消息进行重组;
发送子模块,用于当计时达到所述延迟时间时,发送重组后的所述协议消息。
10.根据权利要求8所述的应用测试装置,其特征在于,所述装置还包括:
重组模块,用于当在所述待测试协议消息列表中未查找到所述协议消息ID时,利用所述协议消息的目的IP地址、端口号和协议类型对所述协议消息进行重组;
发送模块,用于发送重组后的所述协议消息。
11.根据权利要求7所述的应用测试装置,其特征在于,所述装置还包括:
创建模块,用于预先创建虚拟网络接口,所述虚拟网络接口用于接收来自所述待测试应用的客户端的协议消息,以及向所述待测试应用的客户端发送协议消息。
12.根据权利要求8所述的应用测试装置,其特征在于,所述装置还包括:
判断模块,用于在所述协议消息的协议类型为TCP协议时,判断所述协议消息的数据包类型是否为PSH包;
第一确定模块,用于在所述判断模块的结果为是时,确定所述协议消息用于传输数据;
第二确定模块,用于在所述协议消息的协议类型为UDP协议时,确定所述协议消息用于传输数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611040754.5A CN108075945B (zh) | 2016-11-18 | 2016-11-18 | 一种应用测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611040754.5A CN108075945B (zh) | 2016-11-18 | 2016-11-18 | 一种应用测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108075945A true CN108075945A (zh) | 2018-05-25 |
CN108075945B CN108075945B (zh) | 2021-04-27 |
Family
ID=62161596
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611040754.5A Active CN108075945B (zh) | 2016-11-18 | 2016-11-18 | 一种应用测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108075945B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328394A (zh) * | 2020-11-03 | 2021-02-05 | 北京信而泰科技股份有限公司 | 协议仿真中消息序列处理方法、装置及可读介质 |
CN115695233A (zh) * | 2023-01-03 | 2023-02-03 | 北京集度科技有限公司 | 链路测试装置、方法、电子设备及计算机程序产品 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050105350A (ko) * | 2004-04-28 | 2005-11-04 | 이유영 | 실시간 전자프로그램 가이드를 적용한 클라이언트/서버시스템 및 제어방법. |
CN101325780A (zh) * | 2007-06-15 | 2008-12-17 | 华为技术有限公司 | 策略控制实现方法和系统、及策略和计费执行实体 |
CN101656737A (zh) * | 2009-09-10 | 2010-02-24 | 中兴通讯股份有限公司 | 一种实现多协议接入的方法及接口平台 |
CN101715182A (zh) * | 2009-11-30 | 2010-05-26 | 中国移动通信集团浙江有限公司 | 一种流量控制方法、系统和设备 |
CN101917446A (zh) * | 2010-08-26 | 2010-12-15 | 成都市华为赛门铁克科技有限公司 | 多媒体会话控制方法和相关设备及通信系统 |
CN102026221A (zh) * | 2009-09-17 | 2011-04-20 | 华为技术有限公司 | 一种测量方法、装置和系统 |
CN102130821A (zh) * | 2010-08-11 | 2011-07-20 | 华为技术有限公司 | 一种iptv系统中丢包处理的方法、服务器及系统 |
CN102469020A (zh) * | 2010-11-19 | 2012-05-23 | 华为技术有限公司 | 一种业务控制方法及系统、演进基站、分组数据网网关 |
CN102546568A (zh) * | 2010-12-31 | 2012-07-04 | 华为技术有限公司 | Ip终端接入网络的方法和装置 |
CN104937896A (zh) * | 2013-12-13 | 2015-09-23 | 华为技术有限公司 | 地址解析协议消息的处理方法和转发器、控制器 |
CN105634920A (zh) * | 2015-12-22 | 2016-06-01 | 小米科技有限责任公司 | 消息撤回方法及装置 |
-
2016
- 2016-11-18 CN CN201611040754.5A patent/CN108075945B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050105350A (ko) * | 2004-04-28 | 2005-11-04 | 이유영 | 실시간 전자프로그램 가이드를 적용한 클라이언트/서버시스템 및 제어방법. |
CN101325780A (zh) * | 2007-06-15 | 2008-12-17 | 华为技术有限公司 | 策略控制实现方法和系统、及策略和计费执行实体 |
CN101656737A (zh) * | 2009-09-10 | 2010-02-24 | 中兴通讯股份有限公司 | 一种实现多协议接入的方法及接口平台 |
CN102026221A (zh) * | 2009-09-17 | 2011-04-20 | 华为技术有限公司 | 一种测量方法、装置和系统 |
CN101715182A (zh) * | 2009-11-30 | 2010-05-26 | 中国移动通信集团浙江有限公司 | 一种流量控制方法、系统和设备 |
CN102130821A (zh) * | 2010-08-11 | 2011-07-20 | 华为技术有限公司 | 一种iptv系统中丢包处理的方法、服务器及系统 |
CN101917446A (zh) * | 2010-08-26 | 2010-12-15 | 成都市华为赛门铁克科技有限公司 | 多媒体会话控制方法和相关设备及通信系统 |
CN102469020A (zh) * | 2010-11-19 | 2012-05-23 | 华为技术有限公司 | 一种业务控制方法及系统、演进基站、分组数据网网关 |
CN102546568A (zh) * | 2010-12-31 | 2012-07-04 | 华为技术有限公司 | Ip终端接入网络的方法和装置 |
CN104937896A (zh) * | 2013-12-13 | 2015-09-23 | 华为技术有限公司 | 地址解析协议消息的处理方法和转发器、控制器 |
CN105634920A (zh) * | 2015-12-22 | 2016-06-01 | 小米科技有限责任公司 | 消息撤回方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112328394A (zh) * | 2020-11-03 | 2021-02-05 | 北京信而泰科技股份有限公司 | 协议仿真中消息序列处理方法、装置及可读介质 |
CN112328394B (zh) * | 2020-11-03 | 2024-03-01 | 北京信而泰科技股份有限公司 | 协议仿真中消息序列处理方法、装置及可读介质 |
CN115695233A (zh) * | 2023-01-03 | 2023-02-03 | 北京集度科技有限公司 | 链路测试装置、方法、电子设备及计算机程序产品 |
CN115695233B (zh) * | 2023-01-03 | 2023-03-31 | 北京集度科技有限公司 | 链路测试装置、方法、电子设备及计算机程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN108075945B (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11355157B2 (en) | Special effect synchronization method and apparatus, and mobile terminal | |
CN106657431B (zh) | 一种业务平台地址解析的方法、服务器、终端及系统 | |
CN107943683B (zh) | 一种测试脚本生成方法、装置、电子设备及存储介质 | |
CN106126174B (zh) | 一种场景音效的控制方法、及电子设备 | |
CN109379247A (zh) | 一种对应用程序的网络延时进行检测的方法及装置 | |
CN107908952A (zh) | 识别真机和模拟器的方法、装置和终端 | |
CN105389259B (zh) | 一种进行应用程序测试的方法、装置及系统 | |
CN106126160B (zh) | 一种音效调节方法及用户终端 | |
CN104159140B (zh) | 一种视频处理的方法、装置和系统 | |
CN106293901A (zh) | 一种终端应用的进程管理方法及装置 | |
CN106649126A (zh) | 一种对应用程序进行测试的方法和装置 | |
CN107786876A (zh) | 音乐和视频的同步方法、装置及移动终端 | |
CN106231575B (zh) | 短信息处理方法及装置 | |
CN107566255A (zh) | 未读消息摘要生成方法及装置 | |
CN109753425A (zh) | 弹窗处理方法及装置 | |
CN107276602A (zh) | 射频干扰处理方法、装置、存储介质及终端 | |
CN106959859A (zh) | 系统调用函数的调用方法与装置 | |
CN103647761B (zh) | 录音标记方法、装置、终端、服务器及系统 | |
CN107577795A (zh) | 一种推荐歌曲的方法、装置和系统 | |
CN106682189A (zh) | 文件名显示方法及装置 | |
CN106101852A (zh) | 一种直播点评的方法、装置和系统 | |
CN108075945A (zh) | 一种应用测试方法及装置 | |
CN103686317B (zh) | 电视频道播放方法和装置 | |
CN104104508B (zh) | 校验方法、装置和终端设备 | |
CN108804434A (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 |