CN106547687A - 应用测试方法、装置及*** - Google Patents

应用测试方法、装置及*** Download PDF

Info

Publication number
CN106547687A
CN106547687A CN201610900642.6A CN201610900642A CN106547687A CN 106547687 A CN106547687 A CN 106547687A CN 201610900642 A CN201610900642 A CN 201610900642A CN 106547687 A CN106547687 A CN 106547687A
Authority
CN
China
Prior art keywords
test
application
measured terminal
service end
terminal
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
Application number
CN201610900642.6A
Other languages
English (en)
Inventor
卢道和
方镇举
韩海燕
陈朝亮
杨军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201610900642.6A priority Critical patent/CN106547687A/zh
Publication of CN106547687A publication Critical patent/CN106547687A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

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

本发明公开了一种应用测试方法,应用于服务端,所述服务端通过数据线与被测终端通信连接,所述应用测试方法包括:服务端调用安卓调试桥对被测终端执行***初始化操作;在***初始化完成后,若接收到应用测试指令,调用测试组件;根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。本发明还公开了一种应用测试装置及***。本发明提高了应用测试的效率和便捷性。

Description

应用测试方法、装置及***
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用测试方法、装置及***。
背景技术
目前,对终端中某些应用进行测试,一般都是先生成测试脚本,然后将测试脚本发送到终端中,在终端中进行测试,若是采用这种测试方式对应用进行测试,每次对不同应用进行测试,都需要将手机重新Root(重装),若是对终端中的多个应用进行测试,就需要不断的Root终端,导致应用的测试效率低,且多次Root终端,对应用的测试过程比较繁琐。
发明内容
本发明的主要目的在于提出一种应用测试方法、装置及***,旨在解决现有的应用测试方式,测试效率和便捷性较低的技术问题。
为实现上述目的,本发明提供的一种应用测试方法,应用于服务端,所述服务端通过数据线与被测终端通信连接,所述应用测试方法包括:
服务端调用安卓调试桥对被测终端执行***初始化操作;
在***初始化完成后,若接收到应用测试指令,调用测试组件;
根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;
将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。
优选地,所述若接收到应用测试指令,调用测试组件的步骤包括:
所述服务端根据所述应用测试指令确定所述被测终端的应用程序接口API版本;
调用所述API版本对应的测试组件。
优选地,所述将提取的所述测试脚本程序段发送至所述被测终端的步骤包括:
所述服务端监听所述被测终端;
在接收到所述被测终端反馈的终端端口号时,将提取的所述测试脚本程序段发送至所述被测终端,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。
优选地,所述将提取的所述测试脚本程序段发送至所述被测终端的步骤之后,所述应用测试方法还包括:
在所述测试脚本执行完成后,所述服务端对所述被测终端的测试过程进行截图;
根据截取的图片生成预设格式的测试结果文件。
此外,为实现上述目的,本发明还提出一种应用测试装置,应用于服务端,所述服务端通过数据线与被测终端通信连接,所述应用测试装置包括:
调用模块,用于调用安卓调试桥对被测终端执行***初始化操作;
所述调用模块,还用于在***初始化完成后,若接收到应用测试指令,调用测试组件;
提取模块,用于根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;
发送模块,用于将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。
优选地,所述调用模块包括:
确定单元,用于根据所述应用测试指令确定所述被测终端的应用程序接口API版本;
调用单元,用于调用所述API版本对应的测试组件。
优选地,所述发送模块包括:
监听单元,用于监听所述被测终端;
发送单元,用于在接收到所述被测终端反馈的终端端口号时,将提取的所述测试脚本程序段发送至所述被测终端,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。
优选地,所述应用测试装置还包括:
截图模块,用于在所述测试脚本执行完成后,对所述被测终端的测试过程进行截图;
生成模块,用于根据截取的图片生成预设格式的测试结果文件。
此外,为实现上述目的,本发明还提出一种应用测试***,所述应用测试***包括服务端和通过数据线与所述服务端通信连接的被测终端,所述服务端如上文所述的应用测试装置,所述被测终端包括:
启动模块,用于在检测到服务端的***初始化完成时,启动部署的工具包;
接收模块,用于基于启动的所述工具包,接收所述服务端发送的测试脚本程序段;
处理模块,用于调用测试组件对接收到的所述测试脚本程序执行应用测试过程。
优选地,所述接收模块包括:
发送单元,用于基于启动的所述工具包,发送所述被测终端的终端端口号至所述服务端,以供所述服务端基于所述终端端口号反馈所述测试脚本程序段,其中,所述发送单元还用于将每条指令执行结果反馈给所述服务端;
接收单元,用于接收所述服务端反馈的所述测试脚本程序段。
本发明提出的应用测试方法、装置及***,服务端先调用安卓调试桥对被测终端执行***初始化操作,在***初始化完成后,若接收到应用测试指令,调用测试组件,然后根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段,最终将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试,实现了对被测终端中不同的应用进行测试时,无须在终端安装不同的测试脚本,只要由服务端发送不同的测试脚本程序到被测终端即可,不用多次Root被测终端,不仅提高了应用测试的效率,也提高了应用测试的便捷性。
附图说明
图1为本发明应用测试方法第一实施例的流程示意图;
图2为本发明若接收到应用测试指令,调用测试组件的细化流程示意图;
图3为本发明将提取的所述测试脚本程序段发送至所述被测终端的细化流程示意图;
图4为本发明应用测试方法第二实施例的流程示意图;
图5为本发明应用测试装置第一实施例的功能模块示意图;
图6为图5中调用模块的细化功能模块示意图;
图7为图5中发送模块的细化功能模块示意图;
图8为本发明应用测试装置第二实施例的功能模块示意图;
图9为本发明应用测试***较佳实施例的功能模块示意图;
图10为图9中接收模块的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的解决方案主要是:服务端先调用安卓调试桥对被测终端执行***初始化操作,在***初始化完成后,若接收到应用测试指令,调用测试组件,然后根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段,最终将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试,实现了对被测终端中不同的应用进行测试时,无须在终端安装不同的测试脚本,只要由服务端发送不同的测试脚本程序到被测终端即可,不用多次Root被测终端,不仅提高了应用测试的效率,也提高了应用测试的便捷性。
本发明通过服务端(即PC)上的自动化测试工具,将预存的测试脚本传递给通过数据线连在PC的被测终端(即手机)上,不需要手机root便可以将测试脚本指令传递到手机上,从而实现对手机上应用的测试。
本发明提供一种应用测试方法,应用于服务端。
参照图1,图1为本发明应用测试方法第一实施例的流程示意图。
在本实施例中,所述服务端通过数据线与被测终端通信连接,所述应用测试方法包括:
步骤S10,服务端调用安卓调试桥对被测终端执行***初始化操作;
在本实施例中,在执行步骤S10之前,需要先建立测试脚本,所述测试脚本的建立步骤如下:
获取元素:用安卓设备监控器将需要操作的页面元素取出来,当前定位元素的方法有基于元素ID(控件)、元素类名、path(路径)、页面坐标点、图片比较等等;
按照实际的测试场景,根据上述获取到的元素进行测试脚本的开发,测试脚本中需要添加断言,这样测试执行结束的时候就能看到对应的测试结果,断言可以是元素的text、可以是界面的图片对比等等。
值得注意的是,测试脚本的建立过程中,每一步都要严格按照用户点击UI的顺序编写,不能跳序,否则会出现找不到元素的异常报错。
在测试脚本建立完成后,将建立的测试脚本存储起来,然后服务端调用安卓调试桥以完成基本的***初始化操作。
步骤S20,在***初始化完成后,若接收到应用测试指令,调用测试组件;
在***初始化完成后,启动服务端中的自动化测试工具,并当日志输出显示被测终端已经连上后,便可以根据服务端的测试脚本执行后续的测试过程。若此时接收到应用测试指令,则调用测试组件。本实施例中,参照图2,所述步骤S20包括:
步骤S21,所述服务端根据所述应用测试指令确定所述被测终端的应用程序接口API版本;
步骤S22,调用所述API版本对应的测试组件。
也就是说,当在服务端中运行自动化测试工具测试脚本时,服务端中的自动化测试工具会将相应的测试命令以JSON(JavaScript Object Notation,一种数据传输格式)的形式发送给server,而server则会根据被测终端安卓API接口的版本来调用不同的测试组件,本实施例中,优选API版本低于17的调用selendroid,大于或等于17调用UIautomator。
步骤S30,根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;
在调用所述API版本对应的测试组件之后,根据调用的所述测试组件,即可在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段,也就是说,在预存的测试脚本中,提取所述应用测试指令对应的测试脚本程序段。
步骤S40,将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。
在提取出所述应用测试指令对应的测试脚本程序段之后,可以直接将提取的所述测试脚本程序段发送至通过数据线连接的所述被测终端,以对所述被测终端的应用进行测试。具体地,参照图3,所述步骤S40包括:
步骤S41,所述服务端监听所述被测终端;
步骤S42,在接收到所述被测终端反馈的终端端口号时,将提取的所述测试脚本程序段发送至所述被测终端,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。
即所述服务端先实时监听所述被测终端,以接收所述被测终端反馈的终端端口号,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。具体的,所述被测终端在检测到服务端的***初始化完成时,先启动部署的工具包,然后基于启动的所述工具包,发送所述被测终端的终端端口号至所述服务端,以供所述服务端基于所述终端端口号反馈所述测试脚本程序段。值得注意的是,这个工具包的主要作用是消息的传递和测试组件调度。
所述服务端在接收到所述被测终端反馈的终端端口号时,解析所述应用测试命令,然后根据解析好的应用测试命令在测试脚本中提取相应的测试脚本程序段,再通过所述终端端口号对应的端口将提取的测试脚本程序段发给被测终端的工具包。由所述被测终端的工具包在被测终端中调用测试组件完成实际的具体测试操作。
本实施例提出的应用测试方法,服务端先调用安卓调试桥对被测终端执行***初始化操作,在***初始化完成后,若接收到应用测试指令,调用测试组件,然后根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段,最终将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试,实现了对被测终端中不同的应用进行测试时,无须在终端安装不同的测试脚本,只要由服务端发送不同的测试脚本程序到被测终端即可,不用多次Root被测终端,不仅提高了应用测试的效率,也提高了应用测试的便捷性。
进一步地,为了提高应用测试的灵活性,基于第一实施例提出本发明应用测试方法的第二实施例,在本实施例,参照图4,所述步骤S40之后,所述应用测试方法还包括:
步骤S50,在所述测试脚本执行完成后,所述服务端对所述被测终端的测试过程进行截图;
步骤S60,根据截取的图片生成预设格式的测试结果文件。
在本实施例中,在所述测试脚本执行完成后,所述服务端对被测终端的测试过程进行截图,然后在目录下根据截取的图片生成预设格式的测试结果文件,所述预设格式优选为HTML(Hyper Text Markup Language,超文本标记语言)格式。
进一步地,在对被测终端进行测试之后,若有测试案例执行失败,则在测试完后发送测试结果文件至预设的用户终端,如以邮件的方式发送邮件告警信息至预设的邮箱。
进一步地,本发明中,为了提高应用测试的灵活性,优选事先设置测试应用的操作频率,比如控制测试脚本多久执行一次,所述操作频率根据具体情况进行设置,这样基本上可以做到对生产环境的某些应用***的运行情况定时检查。
当然,本发明中,如果有多个应用需要被测试,则可创建多个测试类对各个应用进行测试即可。
在本实施例中,在所述测试脚本执行完成后,所述服务端对所述被测终端的测试过程进行截图,并根据截取的图片生成预设格式的测试结果文件,实现了对服务端对被测终端进行测试结束后,生成测试结果文件即可,便于测试人员检查测试的结果文件,提高了应用测试的灵活性。
本发明的应用测试方案,主要是对手机中的应用,优选手机银行应用做的自动化测试,主要分布在如下几个方面:
用户登录的测试、人脸扫描场景的测试、手机短信场景的测试、查询个人资产的测试、理财产品展示、收益的测试、多家合作行APP嵌入银行H5(Hyper Text MarkupLanguage5,第5代超文本标记语言)页面理财的测试、机器人客服的测试等等场景中,上述的几个测试场景,均会根据操作的时候要出现的页面、页面中的元素进行判断,对于执行失败的场景,会触发邮件告警。
本发明的测试方案,可以自行完成登录、触发otp(One-time Password,也称动态口令)短信、人脸验证、机器人客服等正确性验证,该技术对生产环境***正常运行做到定期的监控,特别是***更新发布的时候,自动化测试脚本可以做到对服务稳定性的监控,使用该技术完成对生产环境机器人客服回复抓取的自动化测试,从而提高了应用测试的效率。
本发明进一步提供一种应用测试装置,应用于服务端。
参照图5,图5为本发明应用测试装置第一实施例的功能模块示意图。
需要强调的是,对本领域的技术人员来说,图5所示功能模块图仅仅是一个较佳实施例的示例图,本领域的技术人员围绕图5所示的应用测试装置的功能模块,可轻易进行新的功能模块的补充;各功能模块的名称是自定义名称,仅用于辅助理解该应用测试装置的各个程序功能块,不用于限定本发明的技术方案,本发明技术方案的核心是,各自定义名称的功能模块所要达成的功能。
在本实施例中,所述服务端通过数据线与被测终端通信连接,所述应用测试装置包括:
调用模块10,用于调用安卓调试桥对被测终端执行***初始化操作;
在本实施例中,还包括建立模块,用于在调用模块10调用安卓调试桥对被测终端执行***初始化操作之前,先建立测试脚本,所述建立模块对测试脚本的建立如下:
获取元素:用安卓设备监控器将需要操作的页面元素取出来,当前定位元素的方法有基于元素ID(控件)、元素类名、path(路径)、页面坐标点、图片比较等等;
按照实际的测试场景,根据上述获取到的元素进行测试脚本的开发,测试脚本中需要添加断言,这样测试执行结束的时候就能看到对应的测试结果,断言可以是元素的text、可以是界面的图片对比等等。
值得注意的是,测试脚本的建立过程中,每一步都要严格按照用户点击UI的顺序编写,不能跳序,否则会出现找不到元素的异常报错。
在建立模块对测试脚本建立完成后,将建立的测试脚本存储起来,然后调用模块10调用安卓调试桥以完成基本的***初始化操作。
所述调用模块10,还用于在***初始化完成后,若接收到应用测试指令,调用测试组件;
在***初始化完成后,启动服务端中的自动化测试工具,并当日志输出显示被测终端已经连上后,便可以根据服务端的测试脚本执行后续的测试过程。若此时接收到应用测试指令,则所述调用模块10调用测试组件。本实施例中,具体地,参照图6,所述调用模块10包括:
确定单元11,用于根据所述应用测试指令确定所述被测终端的应用程序接口API版本;
调用单元12,用于调用所述API版本对应的测试组件。
也就是说,当在服务端中运行自动化测试工具测试脚本时,所述调用模块10会通过自动化测试工具将相应的测试命令以JSON(JavaScript Object Notation,一种数据传输格式)的形式发送给server,而server则会根据被测终端安卓API接口的版本来调用不同的测试组件,本实施例中,优选API版本低于17的调用selendroid,大于或等于17调用UIautomator。
提取模块20,用于根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;
在调用模块10调用所述API版本对应的测试组件之后,提取模块20根据调用的所述测试组件,即可在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段,也就是说,提取模块20在预存的测试脚本中,提取所述应用测试指令对应的测试脚本程序段。
发送模块30,用于将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。
在提取模块20提取出所述应用测试指令对应的测试脚本程序段之后,发送模块30可以直接将提取的所述测试脚本程序段发送至通过数据线连接的所述被测终端,以对所述被测终端的应用进行测试。具体地,参照图7,所述发送模块30包括:
监听单元31,用于监听所述被测终端;
发送单元32,用于在接收到所述被测终端反馈的终端端口号时,将提取的所述测试脚本程序段发送至所述被测终端,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。
即监听单元31先实时监听所述被测终端,以接收所述被测终端反馈的终端端口号,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。具体的,所述被测终端在检测到服务端的***初始化完成时,先启动部署的工具包,然后基于启动的所述工具包,发送所述被测终端的终端端口号至所述服务端,以供所述服务端基于所述终端端口号反馈所述测试脚本程序段。值得注意的是,这个工具包的主要作用是消息的传递和测试组件调度。
在接收到所述被测终端反馈的终端端口号时,解析所述应用测试命令,然后根据解析好的应用测试命令在测试脚本中提取相应的测试脚本程序段,发送单元32再通过所述终端端口号对应的端口将提取的测试脚本程序段发给被测终端的工具包。由所述被测终端的工具包在被测终端中调用测试组件完成实际的具体测试操作。
本实施例提出的应用测试装置,服务端先调用安卓调试桥对被测终端执行***初始化操作,在***初始化完成后,若接收到应用测试指令,调用测试组件,然后根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段,最终将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试,实现了对被测终端中不同的应用进行测试时,无须在终端安装不同的测试脚本,只要由服务端发送不同的测试脚本程序到被测终端即可,不用多次Root被测终端,不仅提高了应用测试的效率,也提高了应用测试的便捷性。
进一步地,为了提高应用测试的灵活性,基于第一实施例提出本发明应用测试装置的第二实施例,在本实施例,参照图8,所述应用测试装置还包括:
截图模块40,用于在所述测试脚本执行完成后,对所述被测终端的测试过程进行截图;
生成模块50,用于根据截取的图片生成预设格式的测试结果文件。
在本实施例中,在所述测试脚本执行完成后,截图模块40对被测终端的测试过程进行截图,然后生成模块50在目录下根据截取的图片生成预设格式的测试结果文件,所述预设格式优选为HTML(Hyper Text Markup Language,超文本标记语言)格式。
进一步地,在对被测终端进行测试之后,若有测试案例执行失败,则所述发送模块30在测试完后发送测试结果文件至预设的用户终端,如以邮件的方式发送邮件告警信息至预设的邮箱。
进一步地,本发明中,为了提高应用测试的灵活性,优选事先设置测试应用的操作频率,比如控制测试脚本多久执行一次,所述操作频率根据具体情况进行设置,这样基本上可以做到对生产环境的某些应用***的运行情况定时检查。
当然,本发明中,如果有多个应用需要被测试,则可创建多个测试类对各个应用进行测试即可。
在本实施例中,在所述测试脚本执行完成后,所述服务端对所述被测终端的测试过程进行截图,并根据截取的图片生成预设格式的测试结果文件,实现了对服务端对被测终端进行测试结束后,生成测试结果文件即可,便于测试人员检查测试的结果文件,提高了应用测试的灵活性。
本发明的应用测试方案,主要是对手机中的应用,优选手机银行应用做的自动化测试,主要分布在如下几个方面:
用户登录的测试、人脸扫描场景的测试、手机短信场景的测试、查询个人资产的测试、理财产品展示、收益的测试、多家合作行APP嵌入银行H5(Hyper Text MarkupLanguage5,第5代超文本标记语言)页面理财的测试、机器人客服的测试等等场景中,上述的几个测试场景,均会根据操作的时候要出现的页面、页面中的元素进行判断,对于执行失败的场景,会触发邮件告警。
本发明的测试方案,可以自行完成登录、触发otp(One-time Password,也称动态口令)短信、人脸验证、机器人客服等正确性验证,该技术对生产环境***正常运行做到定期的监控,特别是***更新发布的时候,自动化测试脚本可以做到对服务稳定性的监控,使用该技术完成对生产环境机器人客服回复抓取的自动化测试,从而提高了应用测试的效率。
本发明进一步提供一种应用测试***。
参照图9,图9为本发明应用测试***较佳实施例的功能模块示意图。
在本实施例中,所述应用测试***包括服务端和通过数据线与所述服务端通信连接的被测终端,所述服务端如上文所述的应用测试装置,所述被测终端包括:
启动模块60,用于在检测到服务端的***初始化完成时,启动部署的工具包;
接收模块70,用于基于启动的所述工具包,接收所述服务端发送的测试脚本程序段;
在本实施例中,启动模块60在检测到服务端的***初始化完成时,启动部署的工具包。值得注意的是,在启动部署的工具包之前,所述被测终端需要先部署所述工具包。在开启部署的工具包之后,接收模块70基于启动的所述工具包,接收所述服务端发送的测试脚本程序段,具体地,参照图10,所述接收模块70包括:
发送单元71,用于基于启动的所述工具包,发送所述被测终端的终端端口号至所述服务端,以供所述服务端基于所述终端端口号反馈所述测试脚本程序段,其中,所述发送单元71还用于将每条指令执行结果反馈给所述服务端;
接收单元72,用于接收所述服务端反馈的所述测试脚本程序段。
即所述接收模块70中的发送单元71先基于启动的所述工具包,发送所述被测终端的终端端口号至所述服务端,方便测试命令的传输,后续,通过所述接收单元72接收所述服务端反馈的所述测试脚本程序段。
处理模块80,用于调用测试组件对接收到的所述测试脚本程序执行应用测试过程。
在接收单元72接收到所述服务端反馈的所述测试脚本程序段时,处理模块80调用测试组件对接收到的所述测试脚本程序执行应用测试过程,本实施例中,同样根据被测终端android API的版本来调用不同的测试组件,在本实施例中,优选在API版本低于17时调用selendroid,在API版本大于或等于17时调用UIautomator。
在本实施例中,在检测到服务端的***初始化完成时,启动模块启动部署的工具包,接收模块再基于启动的所述工具包,接收所述服务端发送的测试脚本程序段,最终处理模块调用测试组件对接收到的所述测试脚本程序执行应用测试过程,实现了对被测终端中不同的应用进行测试时,无须在终端安装不同的测试脚本,只要由服务端发送不同的测试脚本程序到被测终端即可,不用多次Root被测终端,不仅提高了应用测试的效率,也提高了应用测试的便捷性。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种应用测试方法,其特征在于,应用于服务端,所述服务端通过数据线与被测终端通信连接,所述应用测试方法包括:
服务端调用安卓调试桥对被测终端执行***初始化操作;
在***初始化完成后,若接收到应用测试指令,调用测试组件;
根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;
将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。
2.如权利要求1所述的应用测试方法,其特征在于,所述若接收到应用测试指令,调用测试组件的步骤包括:
所述服务端根据所述应用测试指令确定所述被测终端的应用程序接口API版本;
调用所述API版本对应的测试组件。
3.如权利要求1所述的应用测试方法,其特征在于,所述将提取的所述测试脚本程序段发送至所述被测终端的步骤包括:
所述服务端监听所述被测终端;
在接收到所述被测终端反馈的终端端口号时,将提取的所述测试脚本程序段发送至所述被测终端,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。
4.如权利要求1-3任一项所述的应用测试方法,其特征在于,所述将提取的所述测试脚本程序段发送至所述被测终端的步骤之后,所述应用测试方法还包括:
在所述测试脚本执行完成后,所述服务端对所述被测终端的测试过程进行截图;
根据截取的图片生成预设格式的测试结果文件。
5.一种应用测试装置,其特征在于,应用于服务端,所述服务端通过数据线与被测终端通信连接,所述应用测试装置包括:
调用模块,用于调用安卓调试桥对被测终端执行***初始化操作;
所述调用模块,还用于在***初始化完成后,若接收到应用测试指令,调用测试组件;
提取模块,用于根据调用的所述测试组件,在预存的测试脚本中,基于所述应用测试指令提取相应的测试脚本程序段;
发送模块,用于将提取的所述测试脚本程序段发送至所述被测终端,以对所述被测终端的应用进行测试。
6.如权利要求5所述的应用测试装置,其特征在于,所述调用模块包括:
确定单元,用于根据所述应用测试指令确定所述被测终端的应用程序接口API版本;
调用单元,用于调用所述API版本对应的测试组件。
7.如权利要求6所述的应用测试装置,其特征在于,所述发送模块包括:
监听单元,用于监听所述被测终端;
发送单元,用于在接收到所述被测终端反馈的终端端口号时,将提取的所述测试脚本程序段发送至所述被测终端,其中,所述终端端口号由所述被测终端在检测到所述服务端的***初始化完成时反馈。
8.如权利要求5-7任一项所述的应用测试装置,其特征在于,所述应用测试装置还包括:
截图模块,用于在所述测试脚本执行完成后,对所述被测终端的测试过程进行截图;
生成模块,用于根据截取的图片生成预设格式的测试结果文件。
9.一种应用测试***,其特征在于,所述应用测试***包括服务端和通过数据线与所述服务端通信连接的被测终端,所述服务端如权利要求5-8任一项所述的应用测试装置,所述被测终端包括:
启动模块,用于在检测到服务端的***初始化完成时,启动部署的工具包;
接收模块,用于基于启动的所述工具包,接收所述服务端发送的测试脚本程序段;
处理模块,用于调用测试组件对接收到的所述测试脚本程序执行应用测试过程。
10.如权利要求9所述的应用测试***,其特征在于,所述接收模块包括:
发送单元,用于基于启动的所述工具包,发送所述被测终端的终端端口号至所述服务端,以供所述服务端基于所述终端端口号反馈所述测试脚本程序段,其中,所述发送单元还用于将每条指令执行结果反馈给所述服务端;
接收单元,用于接收所述服务端反馈的所述测试脚本程序段。
CN201610900642.6A 2016-10-14 2016-10-14 应用测试方法、装置及*** Pending CN106547687A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610900642.6A CN106547687A (zh) 2016-10-14 2016-10-14 应用测试方法、装置及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610900642.6A CN106547687A (zh) 2016-10-14 2016-10-14 应用测试方法、装置及***

Publications (1)

Publication Number Publication Date
CN106547687A true CN106547687A (zh) 2017-03-29

Family

ID=58368881

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610900642.6A Pending CN106547687A (zh) 2016-10-14 2016-10-14 应用测试方法、装置及***

Country Status (1)

Country Link
CN (1) CN106547687A (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107122301A (zh) * 2017-04-27 2017-09-01 武汉斗鱼网络科技有限公司 界面测试方法及装置
CN107391362A (zh) * 2017-06-28 2017-11-24 北京珠穆朗玛移动通信有限公司 应用测试方法、移动终端及存储介质
CN107608896A (zh) * 2017-09-26 2018-01-19 上海爱优威软件开发有限公司 一种终端应用的检测方法及***
CN108073483A (zh) * 2017-07-31 2018-05-25 北京微应软件科技有限公司 移动终端的控制方法及***
CN108170607A (zh) * 2018-01-03 2018-06-15 上海传英信息技术有限公司 Otp开关的控制装置及控制方法
CN108243284A (zh) * 2016-12-26 2018-07-03 ***通信有限公司研究院 一种拨测方法及装置
CN109726100A (zh) * 2018-04-19 2019-05-07 平安普惠企业管理有限公司 应用性能测试方法、装置、设备及计算机可读存储介质
CN109828921A (zh) * 2019-01-18 2019-05-31 上海极链网络科技有限公司 Html5网页自动化功能测试方法、***和电子设备
CN110737549A (zh) * 2018-07-20 2020-01-31 北京奇虎科技有限公司 应用测试方法、装置、服务器和***
CN110990266A (zh) * 2019-11-15 2020-04-10 苏州浪潮智能科技有限公司 一种测试服务器性能的方法、设备以及存储介质
CN111901471A (zh) * 2020-07-06 2020-11-06 珠海世纪鼎利科技股份有限公司 针对非root安卓手机的路测***及方法
CN112084076A (zh) * 2020-08-26 2020-12-15 上海创功通讯技术有限公司 测试方法、电子设备及存储介质
CN113094290A (zh) * 2021-05-21 2021-07-09 珠海金山网络游戏科技有限公司 程序测试***及方法
CN115276844A (zh) * 2022-08-02 2022-11-01 上海移柯通信技术股份有限公司 通信模组的测试方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150363304A1 (en) * 2014-06-17 2015-12-17 Kishan Nagamalla Self-learning and self-validating declarative testing
CN105868111A (zh) * 2016-03-29 2016-08-17 网易(杭州)网络有限公司 移动终端游戏自动测试方法和装置
CN105912473A (zh) * 2016-04-15 2016-08-31 上海海万信息科技有限公司 基于bdd的移动app自动测试平台和测试方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150363304A1 (en) * 2014-06-17 2015-12-17 Kishan Nagamalla Self-learning and self-validating declarative testing
CN105868111A (zh) * 2016-03-29 2016-08-17 网易(杭州)网络有限公司 移动终端游戏自动测试方法和装置
CN105912473A (zh) * 2016-04-15 2016-08-31 上海海万信息科技有限公司 基于bdd的移动app自动测试平台和测试方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MANOJ HANS: "Chapter 1.Appium–Important Conceptual Background", 《APPIUM.ESSENTIALS》 *
QA SEVEN: "appium手机自动化测试", 《HTTPS://WENKU.BAIDU.COM/VIEW/95DAF550783E0912A3162A22.HTML?FROM=SEARCH》 *
测试之美: "Appium精要之Appium的背景知识", 《HTTPS://WWW.JIANSHU.COM/P/5D11299F674B》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108243284A (zh) * 2016-12-26 2018-07-03 ***通信有限公司研究院 一种拨测方法及装置
CN108243284B (zh) * 2016-12-26 2021-09-14 ***通信有限公司研究院 一种拨测方法及装置
CN107122301A (zh) * 2017-04-27 2017-09-01 武汉斗鱼网络科技有限公司 界面测试方法及装置
CN107122301B (zh) * 2017-04-27 2020-04-10 武汉斗鱼网络科技有限公司 界面测试方法及装置
CN107391362A (zh) * 2017-06-28 2017-11-24 北京珠穆朗玛移动通信有限公司 应用测试方法、移动终端及存储介质
CN108073483A (zh) * 2017-07-31 2018-05-25 北京微应软件科技有限公司 移动终端的控制方法及***
CN107608896A (zh) * 2017-09-26 2018-01-19 上海爱优威软件开发有限公司 一种终端应用的检测方法及***
CN108170607B (zh) * 2018-01-03 2021-05-18 上海传英信息技术有限公司 Otp开关的控制装置及控制方法
CN108170607A (zh) * 2018-01-03 2018-06-15 上海传英信息技术有限公司 Otp开关的控制装置及控制方法
CN109726100A (zh) * 2018-04-19 2019-05-07 平安普惠企业管理有限公司 应用性能测试方法、装置、设备及计算机可读存储介质
CN110737549A (zh) * 2018-07-20 2020-01-31 北京奇虎科技有限公司 应用测试方法、装置、服务器和***
CN109828921A (zh) * 2019-01-18 2019-05-31 上海极链网络科技有限公司 Html5网页自动化功能测试方法、***和电子设备
CN110990266A (zh) * 2019-11-15 2020-04-10 苏州浪潮智能科技有限公司 一种测试服务器性能的方法、设备以及存储介质
CN110990266B (zh) * 2019-11-15 2022-12-16 苏州浪潮智能科技有限公司 一种测试服务器性能的方法、设备以及存储介质
CN111901471A (zh) * 2020-07-06 2020-11-06 珠海世纪鼎利科技股份有限公司 针对非root安卓手机的路测***及方法
CN112084076A (zh) * 2020-08-26 2020-12-15 上海创功通讯技术有限公司 测试方法、电子设备及存储介质
CN113094290A (zh) * 2021-05-21 2021-07-09 珠海金山网络游戏科技有限公司 程序测试***及方法
CN113094290B (zh) * 2021-05-21 2024-02-23 珠海金山数字网络科技有限公司 程序测试***及方法
CN115276844A (zh) * 2022-08-02 2022-11-01 上海移柯通信技术股份有限公司 通信模组的测试方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN106547687A (zh) 应用测试方法、装置及***
CN109302522B (zh) 测试方法、装置以及计算机***和介质
CN111159049B (zh) 接口自动化测试方法及***
CN105302732B (zh) 一种移动终端的自动测试方法及装置
CN104407980B (zh) 移动应用自动化测试装置和方法
US20170337116A1 (en) Application testing on different device types
CN109614313A (zh) 自动化测试方法、装置及计算机可读存储介质
CN111124919A (zh) 一种用户界面的测试方法、装置、设备及存储介质
CN106649107B (zh) 安卓***稳定性的自动化测试方法及装置
US20150347281A1 (en) Automation testing using descriptive maps
US8855961B2 (en) Binary definition files
CN104331373A (zh) 一种Monkey测试***及方法
CN103729294B (zh) 应用软件性能脚本测试方法与装置
CN112463467B (zh) 自动化的整合测试***及其方法
CN107357727A (zh) App运行测试方法、装置、可读存储介质和计算机设备
CN107562637B (zh) 一种用于软件测试的方法、设备、***及存储介质
CN113238930B (zh) 软件***的测试方法、装置、终端设备和存储介质
CN112100078A (zh) 一种生成接口测试用例的方法、装置及设备
WO2020096665A2 (en) System error detection
CN107844486B (zh) 一种用于客户端的分析网页问题的方法和***
CN109739704A (zh) 一种接口测试方法、服务端及计算机可读存储介质
CN106713011A (zh) 一种获取测试数据的方法与***
KR100892141B1 (ko) 휴대용 장치의 자동 검증 방법 및 그 장치
CN110347565B (zh) 一种应用程序的异常分析方法及装置、电子设备
KR20150025106A (ko) 애플리케이션 검증결과 모니터링 서비스를 위한 검증장치, 단말장치, 시스템, 방법 및 컴퓨터로 판독 가능한 기록 매체

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170329