CN105446873B - 基于android平台的APK软件自动测试方法及系统 - Google Patents
基于android平台的APK软件自动测试方法及系统 Download PDFInfo
- Publication number
- CN105446873B CN105446873B CN201410440294.XA CN201410440294A CN105446873B CN 105446873 B CN105446873 B CN 105446873B CN 201410440294 A CN201410440294 A CN 201410440294A CN 105446873 B CN105446873 B CN 105446873B
- Authority
- CN
- China
- Prior art keywords
- test
- equipment
- android
- apk
- softwares
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种基于android平台的APK软件自动测试方法,包括:检测android设备是否与电脑连接成功,及根据与电脑连接成功的android设备的信息建立并实时维护设备表;接收APK软件测试任务,并且结合所述设备表决定测试任务的分配;封装APK软件并向所述android设备上传所述封装的APK软件,及进行所述APK软件的测试;回收并反馈所述APK软件的测试结果。本发明还涉及一种基于android平台的APK软件自动测试系统。本发明提高了APK软件在android设备上的测试效率,具有可扩展性,为大规模android设备集群的管理和自动测试提供了良好的解决方案。
Description
技术领域
本发明涉及一种基于android平台的APK软件自动测试方法及系统。
背景技术
由于安卓的开放性,安卓手机的操作系统升级大大滞后于Google官方发布的版本,有些android设备甚至不支持升级,再加上众多android设备对硬件和驱动的改动,数千种不同的型号,使得Android App的测试工作令人望而生畏。
当前主流的基于android平台的APK(Android Package)软件自动测试方法,能实现APK软件的自动安装、运行、截图等功能。但是,每次测试APK都必须事先配置好相应的参数,这使得测试APK的效率大大降低。
发明内容
有鉴于此,有必要提供一种基于android平台的APK软件自动测试方法及系统。
本发明提供一种基于android平台的APK软件自动测试方法,该方法包括如下步骤:a.检测android设备是否与电脑连接成功,及根据与电脑连接成功的android设备的信息建立并实时维护设备表;b.接收APK软件测试任务,并且结合所述设备表决定测试任务的分配;c.封装APK软件并向所述android设备上传所述封装的APK软件,及进行所述APK软件的测试;d.回收并反馈所述APK软件的测试结果。
其中,该方法在步骤a之前还包括:将android设备通过USB集线器与电脑连接的步骤。
所述的步骤a具体包括:通过adb工具检测android设备是否与电脑连接成功。
所述android设备的信息包括:android设备的内存、CPU使用情况,以及android设备的接入或者断开状态。
所述的测试包括:兼容性测试、性能测试、功能测试。
所述的步骤c具体包括:采用adb工具封装所述APK软件。
本发明还提供一种基于android平台的APK软件自动测试系统,包括检测模块、分配模块、测试模块及反馈模块,其中:所述检测模块用于检测android设备是否与电脑连接成功,及根据与电脑连接成功的android设备的信息建立并实时维护设备表;所述分配模块用于接收APK软件测试任务,并且结合所述设备表决定测试任务的分配;所述测试模块用于封装APK软件并向所述android设备上传所述封装的APK软件,及进行所述APK软件的测试;所述反馈模块用于回收并反馈所述APK软件的测试结果。
其中,所述的检测模块具体用于:通过adb工具检测android设备是否与电脑连接成功。
所述android设备的信息包括:android设备的内存、CPU使用情况,以及android设备的接入或者断开状态。
所述的测试包括:兼容性测试、性能测试、功能测试。
所述的测试模块具体用于:采用adb工具封装所述APK软件。
本发明基于android平台的APK软件自动测试方法及系统,提高了APK软件在android设备上的测试效率,为大规模android设备集群的管理和自动测试提供了良好的解决方案,本发明通过http请求控制测试任务,将测试结果基于http进行反馈,具有良好的可扩展性。
附图说明
图1为本发明基于android平台的APK软件自动测试方法的流程图;
图2为本发明基于android平台的APK软件自动测试系统的硬件架构图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细的说明。
参阅图1所示,是本发明基于android平台的APK软件自动测试方法较佳实施例的作业流程图。
步骤S401,将测试使用的android设备通过USB集线器与电脑连接。具体而言:将测试APK软件使用的一个或者多个android设备通过USB集线器与电脑连接。所述android设备可以为装有android操作系统的手机。
步骤S402,检测所述android设备是否与电脑连接成功,建立并实时维护设备表。具体而言:
首先,通过adb(Android Debug Bridge)工具检测所述android设备是否与电脑连接成功。
在所述android设备与电脑连接成功后,建立并实时维护设备表:周期性获取每个android设备的信息,例如内存、CPU使用情况等,以建立设备表,并及时更新所述设备表。为保证更新的及时性,所述设备表存储在电脑内存中。通过所述设备表,可以清楚地知道android设备的健康状况和任务执行状况,为测试任务的合理分配提供保证。所述设备表能够及时反应android设备的内存、CPU使用情况等信息,以及android设备的接入或者断开状态。
步骤S403,接收用户发出的APK软件测试任务,并且结合所述设备表决定测试任务的分配。具体而言:
本具体实施例中,所述电脑虚拟了一个轻量级的服务器,接收用户的测试命令,同时控制APK软件的测试及回收测试结果,该服务器是一个基于python语言的轻量级开源http服务器,具有很好的平台移植性,适用于windows和unix。用户通过http请求的形式向所述http服务器发送测试任务,所述http服务器接收测试任务,并根据接收的测试任务及设备表所述测试任务的分配。比如,有些android设备已经有测试任务执行,则将本次测试任务延后执行等。
步骤S404,封装并上传所述APK软件,及进行所述APK软件的测试。具体而言:
本具体实施方式采用adb工具封装所述APK软件,并在所述android设备上传所述封装的APK软件,及在上传后完成所述APK软件的测试。
所述测试包括兼容性测试、性能测试、功能测试。所述兼容性测试主要测试所述APK软件的安装、运行、卸载情况,并且反馈截图。所述性能测试主要所述APK软件安装和运行时的内存、cpu消耗等情况。所述功能测试为自动模拟点击所述APK软件的界面按钮,得到测试结果。所述测试通过adb工具来实现自动执行。
步骤S405,回收并反馈所述APK软件的测试结果。具体而言:
本具体实施方式通过adb工具回收所述APK软件的测试结果,并通过所述http服务器将结果反馈给用户。所述http服务器将所述测试结果以柱状图、曲线图、饼图等方式反馈给用户。
参阅图2所示,是本发明基于android平台的APK软件自动测试系统10的硬件架构图。该系统包括准备模块100、检测模块101、分配模块102、测试模块103及反馈模块104。
所述准备模块100用于事先将测试使用的android设备通过USB集线器与电脑连接。具体而言:将测试APK软件使用的一个或者多个android设备通过USB集线器与电脑连接。所述android设备可以为装有android操作系统的手机。
所述检测模块101用于检测所述android设备是否与电脑连接成功,建立并实时维护设备表。具体而言:
首先,通过adb(Android Debug Bridge)工具检测所述android设备是否与电脑连接成功。
在所述android设备与电脑连接成功后,建立并实时维护设备表:周期性获取每个android设备的信息,例如内存、CPU使用情况等,以建立设备表,并及时更新所述设备表。为保证更新的及时性,所述设备表存储在电脑内存中。通过所述设备表,可以清楚地知道android设备的健康状况和任务执行状况,为测试任务的合理分配提供保证。所述设备表能够及时反应android设备的内存、CPU使用情况等信息,以及android设备的接入或者断开状态。
所述分配模块102用于接收用户发出的APK软件测试任务,并且结合所述设备表决定测试任务的分配。具体而言:
本具体实施例中,所述电脑虚拟了一个轻量级的服务器,接收用户的测试命令,同时控制APK软件的测试及回收测试结果,该服务器是一个基于python语言的轻量级开源http服务器,具有很好的平台移植性,适用于windows和unix。用户通过http请求的形式向所述http服务器发送测试任务,所述http服务器接收测试任务,并根据接收的测试任务及设备表所述测试任务的分配。比如,有些android设备已经有测试任务执行,则将本次测试任务延后执行等。
所述测试模块103用于封装并上传所述APK软件,及进行所述APK软件的测试。具体而言:
本具体实施方式采用adb工具封装所述APK软件,并在所述android设备上传所述封装的APK软件,及在上传后完成所述APK软件的测试。
所述测试包括兼容性测试、性能测试、功能测试。所述兼容性测试主要测试所述APK软件的安装、运行、卸载情况,并且反馈截图。所述性能测试主要所述APK软件安装和运行时的内存、cpu消耗等情况。所述功能测试为自动模拟点击所述APK软件的界面按钮,得到测试结果。所述测试通过adb工具来实现自动执行。
所述反馈模块104用于回收并反馈所述APK软件的测试结果。具体而言:
本具体实施方式通过adb工具回收所述APK软件的测试结果,并通过所述http服务器将结果反馈给用户。所述http服务器将所述测试结果以柱状图、曲线图、饼图等方式反馈给用户。
本发明能够实现APK软件在android设备上的兼容性、性能、功能等方面的测试,通过http请求控制测试任务的执行,并且将测试结果基于http服务器进行展示。同时本发明具有良好的扩展性,可以扩展到N个电脑节点上,每个电脑节点可以支持N个android设备,从而实现大规模android设备集群的自动测试。
虽然本发明参照当前的较佳实施方式进行了描述,但本领域的技术人员应能理解,上述较佳实施方式仅用来说明本发明,并非用来限定本发明的保护范围,任何在本发明的精神和原则范围之内,所做的任何修饰、等效替换、改进等,均应包含在本发明的权利保护范围之内。
Claims (11)
1.一种基于android平台的APK软件自动测试方法,其特征在于,该方法包括如下步骤:
a.检测android设备是否与电脑连接成功,及根据与电脑连接成功的android设备的信息建立并实时维护设备表;
b.接收APK软件测试任务,并且结合所述设备表决定测试任务的分配;
c.封装APK软件并向所述android设备上传所述封装的APK软件,及进行所述APK软件的测试;
d.回收并反馈所述APK软件的测试结果;
所述步骤a包括:周期性获取每个android设备的信息,以建立设备表,并及时更新所述设备表,所述设备表能够及时反映android设备的内存、CPU使用情况,以及android设备的接入或者断开状态。
2.如权利要求1所述的方法,其特征在于,该方法在步骤a之前还包括:
将android设备通过USB集线器与电脑连接的步骤。
3.如权利要求1或2所述的方法,其特征在于,所述的步骤a具体包括:
通过adb工具检测android设备是否与电脑连接成功。
4.如权利要求3所述的方法,其特征在于,所述android设备的信息包括:android设备的内存、CPU使用情况,以及android设备的接入或者断开状态。
5.如权利要求1所述的方法,其特征在于,所述的测试包括:兼容性测试、性能测试、功能测试。
6.如权利要求1或2所述的方法,其特征在于,所述的步骤c具体包括:采用adb工具封装所述APK软件。
7.一种基于android平台的APK软件自动测试系统,其特征在于,该系统包括检测模块、分配模块、测试模块及反馈模块,其中:
所述检测模块用于检测android设备是否与电脑连接成功,及根据与电脑连接成功的android设备的信息建立并实时维护设备表;
所述分配模块用于接收APK软件测试任务,并且结合所述设备表决定测试任务的分配;
所述测试模块用于封装APK软件并向所述android设备上传所述封装的APK软件,及进行所述APK软件的测试;
所述反馈模块用于回收并反馈所述APK软件的测试结果;
所述检测模块具体用于:周期性获取每个android设备的信息,以建立设备表,并及时更新所述设备表,所述设备表能够及时反映android设备的内存、CPU使用情况,以及android设备的接入或者断开状态。
8.如权利要求7所述的系统,其特征在于,所述的检测模块具体用于:
通过adb工具检测android设备是否与电脑连接成功。
9.如权利要求8所述的系统,其特征在于,所述android设备的信息包括:android设备的内存、CPU使用情况,以及android设备的接入或者断开状态。
10.如权利要求7所述的系统,其特征在于,所述的测试包括:兼容性测试、性能测试、功能测试。
11.如权利要求7所述的系统,其特征在于,所述的测试模块具体用于:采用adb工具封装所述APK软件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410440294.XA CN105446873B (zh) | 2014-09-01 | 2014-09-01 | 基于android平台的APK软件自动测试方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410440294.XA CN105446873B (zh) | 2014-09-01 | 2014-09-01 | 基于android平台的APK软件自动测试方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105446873A CN105446873A (zh) | 2016-03-30 |
CN105446873B true CN105446873B (zh) | 2018-05-22 |
Family
ID=55557102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410440294.XA Active CN105446873B (zh) | 2014-09-01 | 2014-09-01 | 基于android平台的APK软件自动测试方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105446873B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106501633A (zh) * | 2016-09-27 | 2017-03-15 | 捷开通讯科技(上海)有限公司 | 穿戴式电子设备的测试系统与方法 |
CN107566472B (zh) * | 2017-08-25 | 2020-09-29 | 四川长虹电器股份有限公司 | 一种apk自动维护实现方法 |
CN108009085B (zh) * | 2017-11-29 | 2021-01-12 | 广州君海网络科技有限公司 | 渠道包测试方法 |
CN108829577A (zh) * | 2018-04-26 | 2018-11-16 | 四川斐讯信息技术有限公司 | 一种应用程序性能的自动化测试方法 |
CN112000344A (zh) * | 2020-08-25 | 2020-11-27 | 南京烽火星空通信发展有限公司 | 一种基于Android平台的无痕数据获取方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103123605A (zh) * | 2013-02-07 | 2013-05-29 | 百度在线网络技术(北京)有限公司 | 一种Android平台自动化集成测试方法和装置 |
CN103501505A (zh) * | 2013-09-18 | 2014-01-08 | 福州瑞芯微电子有限公司 | 一种自动测试Android设备上WIFI模块的系统 |
CN103544100A (zh) * | 2012-07-12 | 2014-01-29 | 腾讯科技(深圳)有限公司 | 便携数据处理设备应用程序的测试方法、系统和客户端 |
CN103631703A (zh) * | 2012-08-21 | 2014-03-12 | 腾讯科技(深圳)有限公司 | 安卓设备中的软件性能测试方法和装置 |
CN103713991A (zh) * | 2012-10-08 | 2014-04-09 | 腾讯科技(深圳)有限公司 | 一种在安卓设备上测试应用程序的方法和装置 |
CN103744784A (zh) * | 2014-01-06 | 2014-04-23 | 中国移动(深圳)有限公司 | 手机应用自动化测试方法及系统 |
-
2014
- 2014-09-01 CN CN201410440294.XA patent/CN105446873B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544100A (zh) * | 2012-07-12 | 2014-01-29 | 腾讯科技(深圳)有限公司 | 便携数据处理设备应用程序的测试方法、系统和客户端 |
CN103631703A (zh) * | 2012-08-21 | 2014-03-12 | 腾讯科技(深圳)有限公司 | 安卓设备中的软件性能测试方法和装置 |
CN103713991A (zh) * | 2012-10-08 | 2014-04-09 | 腾讯科技(深圳)有限公司 | 一种在安卓设备上测试应用程序的方法和装置 |
CN103123605A (zh) * | 2013-02-07 | 2013-05-29 | 百度在线网络技术(北京)有限公司 | 一种Android平台自动化集成测试方法和装置 |
CN103501505A (zh) * | 2013-09-18 | 2014-01-08 | 福州瑞芯微电子有限公司 | 一种自动测试Android设备上WIFI模块的系统 |
CN103744784A (zh) * | 2014-01-06 | 2014-04-23 | 中国移动(深圳)有限公司 | 手机应用自动化测试方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105446873A (zh) | 2016-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105446873B (zh) | 基于android平台的APK软件自动测试方法及系统 | |
WO2017161984A1 (zh) | 数据集群的部署方法、装置、系统及计算机存储介质 | |
CN107704395B (zh) | 一种基于Openstack下云平台自动化测试实施方法与系统 | |
US10664388B2 (en) | Continuous integration testing for network-based applications | |
CN103970650B (zh) | 分布式测试方法和装置 | |
CN105302716B (zh) | 合流开发模式下的测试方法、装置 | |
US11483218B2 (en) | Automating 5G slices using real-time analytics | |
CN103678132A (zh) | 一种应用软件云测试系统 | |
US20140040441A1 (en) | System and method for the configuration of a clustered simulation network | |
CN102141962A (zh) | 一种安全性分布式测试框架系统及其测试方法 | |
CN103973858B (zh) | 移动终端的自动测试系统 | |
CN102346709A (zh) | 软件开发辅助方法及系统 | |
US11074149B2 (en) | Cloud simulation and validation system | |
CN103209197A (zh) | 集群服务器部署方法及系统 | |
CN104933174A (zh) | 基于控件自动化遍历解决手机app机型适配问题的方法 | |
CN104246702A (zh) | 工作流编译 | |
CN111258913A (zh) | 算法自动测试方法、装置、计算机系统及可读存储介质 | |
US10536339B2 (en) | Systems and methods for system configuration for communication network devices | |
CN106445611B (zh) | 大数据节点系统及自动部署方法 | |
CN105389172A (zh) | 应用程序升级方法和装置 | |
CN102841843B (zh) | 兼容判断方法及装置 | |
CN112105025B (zh) | 基于eSIM的运营商网络测试系统及方法 | |
CN113672502A (zh) | 程序多系统测试方法及其相应的装置、设备、介质 | |
CN104361437A (zh) | 一种多样化数据接口质量检查管理的方法及系统 | |
WO2014056350A1 (zh) | 一种基站及其维护方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |