著录项信息
专利名称 | 一种基于Android系统的终端测试的方法及装置 |
申请号 | CN201210387261.4 | 申请日期 | 2012-10-10 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2013-02-06 | 公开/公告号 | CN102917095A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04M1/24 | IPC分类号 | H;0;4;M;1;/;2;4;;;H;0;4;L;1;2;/;2;6查看分类表>
|
申请人 | 青岛海信移动通信技术股份有限公司 | 申请人地址 | 山东省青岛市崂山区株洲路151号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 青岛海信移动通信技术股份有限公司 | 当前权利人 | 青岛海信移动通信技术股份有限公司 |
发明人 | 林文;张景新;杨鹏 |
代理机构 | 北京同达信恒知识产权代理有限公司 | 代理人 | 黄志华 |
摘要
本发明涉及通信技术领域,特别涉及一种基于Android系统的终端测试的方法及装置,用于解决现有在开发测试软件时,需要针对不同的芯片进行设计的问题。本发明实施例的方法包括:测试端通过ADB接口,与被测终端建立Socket连接;及通过建立的Socket连接,采用ADB接口支持的通信协议,与被测终端之间进行信令交互及数据传输。由于本发明测试端通过ADB接口与被测试终端之间建立Socket连接,在对基于不同硬件平台的被测试终端进行测试时,只要采用ADB接口支持的通信协议即可进行通信,而不需要针对不同的硬件平台开发不同的测试软件,减少了测试软件开发的重复性。
1.一种基于Android系统的终端测试的方法,其特征在于,该测试方法包括:
测试端通过Android系统的调试桥ADB接口,调用adb forward指令,与基于不同硬件平台的被测终端建立Socket连接,其中,所述测试端通过所述adb forward指令中指定的Socket端口发送或接收信令及数据;
所述测试端通过建立的Socket连接,采用所述ADB接口支持的通信协议,与所述被测终端之间进行信令交互及数据传输,以完成对所述被测终端的测试,其中,所述ADB接口支持的通信协议为现有的协议,或者所述测试端与所述被测试端之间约定的格式的协议。
2.如权利要求1所述的方法,其特征在于,所述adb forward指令为adb forward tcp:12800tcp12500。
3.如权利要求2所述的方法,其特征在于,端口12800作为所述测试端的Socket端口,所述测试端通过所述端口12800向所述被测终端发送指令或数据,和/或通过所述端口
12800接收来自所述被测终端发送的指令或数据;
端口12500作为所述被测终端的Socket端口,所述被测终端通过所述端口12500监听来自所述测试端发送的指令或数据,和/或通过所述端口12500向所述测试端发送指令或数据。
4.如权利要求1~3任一所述的方法,其特征在于,所述测试端为个人电脑PC、笔记本电脑或服务器。
5.一种基于Android系统的终端测试的装置,其特征在于,该装置包括:
连接建立模块,用于通过ADB接口,调用adb forward指令,与基于不同硬件平台的被测终端建立Socket连接,其中,所述连接建立模块通过所述adb forward指令中指定的Socket端口发送或接收信令及数据;
通信模块,用于通过建立的Socket连接,采用所述ADB接口支持的通信协议,与所述被测终端之间进行信令交互及数据传输,以完成对所述被测终端的测试,其中,所述ADB接口支持的通信协议为现有的协议,或者所述测试端与所述被测试端之间约定的格式的协议。
6.如权利要求5所述的装置,其特征在于,所述adb forward指令为adb forward tcp:12800tcp12500。
7.如权利要求6所述的装置,其特征在于,端口12800作为所述通信模块的Socket端口,所述通信模块通过所述端口12800向所述被测终端发送指令或数据,和/或通过所述端口12800接收来自所述被测终端发送的指令或数据;
端口12500作为所述被测终端的Socket端口,所述被测终端通过所述端口12500监听来自所述通信模块发送的指令或数据,和/或通过所述端口12500向所述通信模块发送指令或数据。
8.如权利要求5~7任一所述的装置,其特征在于,所述装置为PC、笔记本电脑或服务器。
一种基于Android系统的终端测试的方法及装置\n技术领域\n[0001] 本发明涉及通信技术领域,特别涉及一种基于Android系统的终端测试的方法及装置。\n背景技术\n[0002] 目前,基于Android系统的终端,如手机、平板电脑等,已广泛应用于人们的日常生活中。在终端的制作或后期维护过程中,需要针对不同的终端开发测试软件及通信软件,以实现对终端的开发及测试。这些测试软件及通信软件,一般都是基于终端的内部芯片所提供的Modem通信端口进行设计的;芯片提供的Modem通信端口包括诊断端口(Diagnostic)、虚拟通用串行总线(Universal Serial Bus,USB)通信端口等。\n[0003] 由于目前有多种不同的硬件平台,基于不同的硬件平台设计的芯片采用的指令格式及数据传输格式有可能不同,从而导致在开发测试软件或通信软件时,为了能够与终端的芯片之间进行指令交互及数据传输,需要针对不同的芯片对应的指令格式及数据传输格式进行开发和设计。针对采用不同硬件平台的终端,对各终端进行测试时,有时仅需要实现同一个功能的测试,但由于不同的芯片有可能采用不同的指令格式及数据传输格式,因此,针对每一个不同的芯片都需要重复开发具有相同功能的测试软件或通信软件,从而不仅造成了资源的浪费,还使得测试软件及通信软件的开发周期变长。\n[0004] 综上所述,采用不同硬件平台的终端所提供的测试接口不统一,且不同芯片采用的指令格式及数据传输格式也有可能不同,使得在开发测试软件或通信软件时,需要针对不同的芯片对应的指令格式及数据传输格式进行设计,不仅造成了资源的浪费,还使得测试软件及通信软件的开发周期变长。\n发明内容\n[0005] 本发明实施例提供了一种基于Android系统的终端测试的方法及装置,用于解决现有技术中在开发测试软件或通信软件时,存在的需要针对不同的芯片对应的指令格式及数据传输格式进行设计的问题。\n[0006] 本发明实施例提供了一种基于Android系统的终端测试的方法,包括:\n[0007] 测试端通过Android系统的调试桥ADB接口,与被测终端建立Socket连接;\n[0008] 所述测试端通过建立的Socket连接,采用所述ADB接口支持的通信协议,与所述被测终端之间进行信令交互及数据传输,以完成对所述被测终端的测试。\n[0009] 本发明实施例提供了一种基于Android系统的终端测试的装置,包括:\n[0010] 连接建立模块,用于通过ADB接口,与被测终端建立Socket连接;\n[0011] 通信模块,用于通过建立的Socket连接,采用所述ADB接口支持的通信协议,与所述被测终端之间进行信令交互及数据传输,以完成对所述被测终端的测试。\n[0012] 本发明实施例测试端通过ADB接口,与被测试终端之间建立Socket连接,以实现与被测试终端进行指令交互及数据传输,进而实现对该被测试终端的测试,因此,测试端的测试软件在对基于不同硬件平台的被测试终端进行测试时,只要采用ADB接口支持的通信协议即可进行通信,而不再需要针对不同的硬件平台开发不同的测试软件,从而减少了测试端的测试软件开发的重复性;并且,采用ADB接口进行通信,其通信速度相比于传统的串口通信速更快,从而提高了测试效率。\n附图说明\n[0013] 图1为本发明实施例基于Android系统的终端测试的方法流程示意图;\n[0014] 图2为本发明实施例基于Android系统的手机测试方法流程示意图;\n[0015] 图3为本发明实施例手机测试方法中PC端所执行的操作流程示意图;\n[0016] 图4为本发明实施例手机测试方法中被测手机所执行的操作流程示意图;\n[0017] 图5为本发明实施例基于Android系统的终端测试的装置结构示意图。\n具体实施方式\n[0018] 本发明实施例测试端通过ADB接口,与被测试终端之间建立Socket连接,以实现与被测试终端进行指令交互及数据传输,进而实现对该被测试终端的测试,因此,测试端的测试软件在对基于不同硬件平台的被测试终端进行测试时,只要采用ADB接口支持的通信协议即可进行通信,而不再需要针对不同的硬件平台开发不同的测试软件,从而减少了测试端的测试软件开发的重复性。\n[0019] 下面结合说明书附图对本发明实施例作进一步详细描述。\n[0020] 参见图1所示,本发明实施例提供的基于Android系统的终端测试的方法,包括以下步骤:\n[0021] 步骤11、测试端通过Android系统的调试桥ADB接口,与被测终端建立Socket连接;\n[0022] 进一步,测试端通过ADB接口,可以与基于不同硬件平台的终端建立连接,以实现对不同终端的测试;\n[0023] 进一步,测试端可以为个人电脑PC、笔记本电脑或服务器等。\n[0024] 步骤12、测试端通过建立的Socket连接,采用ADB接口支持的通信协议,与被测终端之间进行信令交互及数据传输,以完成对被测终端的测试;\n[0025] 其中,测试端与被测终端之间进行通信的协议可以为现有的通信协议,如TCP/IP(Transfer Control Protocol,传输控制协议/Internet Protocol,因特网协议),也可以为测试端与被测终端之间约定的某个格式的协议,只要是采用ADB接口能够支持的通信协议即可。\n[0026] 进一步,步骤11中建立Socket连接包括:\n[0027] 测试端通过ADB接口,调用adb forward指令,建立Socket连接;其中,测试端通过adb forward指令中指定的Socket端口(Port)发送或接收信令及数据。\n[0028] 进一步,该adb forward指令为adb forward tcp:12800tcp12500;\n[0029] 具体的,端口12800作为测试端的Socket端口,测试端通过端口12800向被测终端发送指令或数据,和/或通过端口12800接收来自被测终端发送的指令或数据;\n[0030] 端口12500作为被测终端的Socket端口,被测终端通过端口12500监听来自测试端发送的指令或数据,和/或通过端口12500向测试端发送指令或数据。\n[0031] 需要说明的是,Android系统调试桥(Android Debug Bridge,ADB)是Android操作系统中用于调试、跟踪手机软件运行信息或者Log等记录文件的接口,极大方便了开发者开发手机软件或者跟踪解决手机软件Bug等。目前,大部分的智能手机平台都是基于Android操作系统开发的,尽管各手机的芯片有可能不同,但是,基于Android操作系统的ADB接口进行通信时,PC端与手机端的协议是一致的,从而使同一个测试软件或通信软件可以在支持不同硬件平台的手机上共用。\n[0032] 下面举例进行详细说明。参见图2所示,本发明实施例基于Android系统的终端测试的方法包括:\n[0033] 步骤21、运行被测试手机开机,并通过USB数据线与PC机之间的建立连接;\n[0034] 步骤22、PC端的测试软件根据其设备管理器的设备列表中列出的ADB设备(被测试手机),确定被测试手机;其中,ADB的驱动程序提前安装到PC中;\n[0035] 步骤23、PC端的测试软件调用adb.exe程序,并调用指令“adb forward tcp:12800tcp:12500”在PC端建立一个能与被测试手机进行通信的Socket连接;\n[0036] 步骤24、PC端的测试软件通过端口12800实现与被测试手机之间的指令交互或者数据传输;\n[0037] 步骤25、被测试手机端作为Socket服务器,通过端口12500监听该PC端的指令或数据,并根据收到的指令或数据,通过端口12500进行反馈。\n[0038] 下面分别从PC端的测试软件和被测手机的手机软件所执行的操作进行详细说明。\n[0039] 参见图3所示,PC端的测试软件所执行的操作包括:\n[0040] 步骤31、运行PC端的测试软件;\n[0041] 步骤32、PC端的测试软件启动Adb.exe;\n[0042] 步骤33、PC端的测试软件调用adb forward指令建立Socket连接;\n[0043] 步骤34、PC端的测试软件通过Socket端口发送指令或数据,和/或接收来自被测手机发送的指令或数据。\n[0044] 参见图4所示,被测手机的手机软件所执行的操作包括:\n[0045] 步骤41、运行被测手机;\n[0046] 步骤42、启动被测手机的手机软件,即启动已建立的Socket连接中默认的Socket端口的监听服务;\n[0047] 步骤43、被测手机的手机软件通过已建立的Socket连接中默认的Socket端口,监听来自PC端发送的指令或数据;\n[0048] 步骤44、被测手机的手机软件根据接收到的来自PC端发送的指令或数据,通过该Socket端口进行反馈。\n[0049] 基于同一发明构思,本发明实施例中还提供了基于Android系统的终端测试的装置,由于该装置解决问题的原理与上述基于Android系统的终端测试的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。\n[0050] 参见图5所示,本发明实施例提供的基于Android系统的终端测试的装置,包括:\n[0051] 连接建立模块51,用于通过ADB接口,与被测终端建立Socket连接;\n[0052] 通信模块52,用于通过建立的Socket连接,采用ADB接口支持的通信协议,与被测终端之间进行信令交互及数据传输,以完成对被测终端的测试。\n[0053] 进一步,连接建立模块51具体用于:\n[0054] 通过ADB接口,调用adb forward指令,建立Socket连接;其中,连接建立模块51通过adb forward指令中指定的Socket端口发送或接收信令及数据。\n[0055] 进一步,调用的adb forward指令为adb forward tcp:12800tcp12500。\n[0056] 具体的,端口12800作为通信模块的Socket端口,通信模块通过端口12800向被测终端发送指令或数据,和/或通过端口12800接收来自被测终端发送的指令或数据;\n[0057] 端口12500作为被测终端的Socket端口,被测终端通过端口12500监听来自通信模块发送的指令或数据,和/或通过端口12500向通信模块发送指令或数据。\n[0058] 进一步,本发明实施例的装置可以为PC、笔记本电脑或服务器等。\n[0059] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。\n[0060] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。\n[0061] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。\n[0062] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。\n[0063] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。\n[0064] 本发明实施例测试端通过ADB接口,与被测试终端之间建立Socket连接,以实现与被测试终端进行指令交互及数据传输,进而实现对该被测试终端的测试,因此,测试端的测试软件在对基于不同硬件平台的被测试终端进行测试时,只要采用ADB接口支持的通信协议即可进行通信,而不再需要针对不同的硬件平台开发不同的测试软件,从而减少了测试端的测试软件开发的重复性;并且,采用ADB接口进行通信,其通信速度相比于传统的串口通信速更快,从而提高了测试效率。\n[0065] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
法律信息
- 2015-08-05
- 2013-03-20
实质审查的生效
IPC(主分类): H04M 1/24
专利申请号: 201210387261.4
申请日: 2012.10.10
- 2013-02-06
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2012-04-18
|
2011-12-27
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |