CN105740138B - 应用的测试方法、测试装置及测试系统 - Google Patents

应用的测试方法、测试装置及测试系统 Download PDF

Info

Publication number
CN105740138B
CN105740138B CN201410746724.0A CN201410746724A CN105740138B CN 105740138 B CN105740138 B CN 105740138B CN 201410746724 A CN201410746724 A CN 201410746724A CN 105740138 B CN105740138 B CN 105740138B
Authority
CN
China
Prior art keywords
application
test
defect
signature
tested
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
Application number
CN201410746724.0A
Other languages
English (en)
Other versions
CN105740138A (zh
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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201410746724.0A priority Critical patent/CN105740138B/zh
Publication of CN105740138A publication Critical patent/CN105740138A/zh
Application granted granted Critical
Publication of CN105740138B publication Critical patent/CN105740138B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供一种针对应用的测试方法、测试装置及测试系统,利用提供的应用内测试TIA服务的缺陷管理应用,可以对移动客户端中的各个被测应用进行测试,可在测试过程中发现的缺陷而自动生成缺陷报告并将所述缺陷报告直接上传提交至缺陷服务端予以保存,整个测试过程及缺陷提交均是缺陷管理应用中实现的,无需在各个应用间进行频繁切换,简化了系统复杂度,测试操作简便且快速高效。

Description

应用的测试方法、测试装置及测试系统
技术领域
本发明属于网络通信技术领域,特别是涉及一种应用的测试方法、测试装置及测试系统。
背景技术
目前具有信息处理功能的移动终端(也可称为:手持终端或可携式终端)被应用得越来越广泛,例如智能手机、掌上电脑、平板电脑、智能手表等已经成为人们随身携带的常用装备。通常,这些便携信息处理设备上都加载有操作系统,例如常见的移动操作系统(Mobile operating system,Mobile OS)有:塞班(Symbian)操作系统、安卓(Android)操作系统、苹果iOS操作系统、微软Windows Phone操作系统、以及火狐Firefox OS等。利用基于移动终端的操作系统,可以加载运行各种应用(APP,Application),这些应用有的是操作系统自带的,但大部分应用都是独立于操作系统的第三方应用。
针对移动终端:一方面,加载在移动终端上的应用越来越多,且各个应用的更新频率越来越快(更新周期越来越短),这样势必需要测试人员对各个应用进行相应的功能测试;另一方面,鉴于移动终端的环境差异性,由于移动终端的品牌和机型、操作系统的版本(特别是对于Android操作系统存在较为严重的碎片化)、屏幕尺寸、屏幕分辨率等存在差异,为确保加载在移动终端上的应用可正常运行,通常需要对加载在移动终端上的应用进行功能测试。
目前针对移动终端中应用的功能测试,主要通过两种方式来将功能测试中发现的缺陷(bug)进行提交:
1、移动终端与PC端结合的方式:主要是通过数据线进行移动终端与PC端通信连接,当在移动终端上发现缺陷(bug)时,通过PC端用第三方软件进行截图,并完成缺陷(bug)信息的提交。这种方式可以快速完成缺陷(bug)信息的描述,但需要人工去输入移动终端的机型及操作系统信息,而且需要借助第三方工具进行跨平台操作,使得提交缺陷的流程不顺畅,而且也不能做到随时随地进行缺陷(bug)的提交。
2、利用缺陷管理的app工具:就是在移动终端上加载具有缺陷管理的app工具,利用这个缺陷管理工具,即可在移动终端上就能进行缺陷(bug)的提交。这种方式可以不受场地的限制,并且可以实时关注及管理缺陷(bug)。但在使用的过程中,仍存在一些缺点:在进行移动终端应用的测试时,发现缺陷(bug)需要切换到缺陷管理的app工具才能进行缺陷(bug)的提交,增加了用户操作的成本;不能很好地实现缺陷(bug)的截图操作;发现问题且需要记录缺陷(bug)的重现步骤时,若通过app进行文字描述,效率会比较低。
发明内容
本发明的目的在于提供一种应用的测试方法、测试装置及测试系统,以解决现有技术中应用测试操作繁琐、功能缺失、以及效率低下等问题。
为解决上述技术问题及其他技术问题,本发明在一方面提供一种应用测试方法,包括:启动带有应用内测试TIA服务的缺陷管理应用,由所述缺陷管理应用显示加载于移动客户端上的各个应用以供从中选取所需的被测应用;在确定被选中的所述被测应用加载有适配的测试用签名包之后,通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试;根据所述被测应用在测试过程中所发现的缺陷生成缺陷报告;以及上传所述缺陷报告。
可选地,在启动带有应用内测试TIA服务的缺陷管理应用之前还包括:预先在移动客户端上加载缺陷管理应用;以及启动带有应用内测试TIA服务的缺陷管理应用之后,筛选出当前移动客户端上所加载的所有应用,且将所筛选出的所有所述应用以应用列表的形式显示。
可选地,所述测试用签名包为基于测试工具类的安装包文件。
可选地,筛选出当前移动客户端上所加载的所有应用,包括:获取当前移动客户端上已加载的安装包文件的信息,并据此获取针对所述应用的特征信息,所述特征信息包括图标、包名、应用名称、以及版本号中的至少一者。
可选地,若确定被选中的所述被测应用未加载有适配的测试用签名包时,则还包括对所述被测应用进行重签名操作和将进行重签名操作后的测试用签名包加载于所述移动客户端。
可选地,进行重签名操作,包括:提供重签名的归档文件包工具,输入所述被测应用的文件信息,根据所述文件信息,利用归档文件包签名工具基于测试工具类生成重签名的安装包文件,所述重签名的安装包文件与所述被测应用具有同样的签名文件;将所述重签名的安装包文件予以保存;
将进行重签名操作后的测试用签名包加载于所述移动客户端,包括:当被测应用被选中以进行测试时,下载所述重签名的安装包文件于所述移动客户端并在所述移动客户端上予以加载。
可选地,所述应用测试方法还包括:实时监控所述被测应用在测试过程中的网络流量和内存占用量;以及在完成测试后,统计出整个测试过程中的网络流量和内存占用量并予以显示。
可选地,在启动所述被测应用时,还包括:启动录制操作步骤的功能,用于在对所述被测应用进行测试时进行录制测试操作,以对在测试中所发现的缺陷进行记录。
可选地,所述录制测试操作包括:当在对所述被测应用进行测试并发现有缺陷时,对显示的出现有所述缺陷的当前页面进行截图并将所述截图保存至缺陷提交页面,记录所述缺陷被发现前的若干步操作步骤并将所述若干操作步骤以伪代码的形式保存至缺陷提交页面的缺陷操作流程描述中。
可选地,在对显示的出现有所述缺陷的当前页面进行截图之前还包括:对当前页面下出现的所述缺陷进行涂鸦标注;对显示的出现有所述缺陷的当前页面进行截图所得的截图中包括有指向所述缺陷的涂鸦标注。
可选地,所述应用测试方法还包括:在所述缺陷提交页面中,填写所述缺陷的标题以及选择所述缺陷的指派人;在完成上述输入操作之后,将所述缺陷提交页面作为缺陷报告予以上传以供保存;以及完成缺陷报告的提交之后,回到所述被测应用的测试页面以对所述被测应用的剩余部分继续进行测试。
本发明提供应用测试方法,一来,在带有应用内测试TIA服务的缺陷管理应用的测试页面上直接对加载了测试用签名包的被测应用进行测试,整个测试过程均是缺陷管理应用中实现的,无需在多个应用间进行切换。再者,在测试工程中,进行录制测试操作,对在测试中所发现的缺陷进行记录,根据发现的缺陷而生成缺陷报告并将所述缺陷报告直接上传提交,操作简便且快速高效。
本发明在另一方面提供一种应用测试装置,包括:
应用启动模块,用于:启动带有应用内测试TIA服务的缺陷管理应用,所述缺陷管理应用用于在启动后显示加载于移动客户端上的各个应用以供从中选取所需的被测应用;在确定被选中的所述被测应用加载有适配的测试用签名包之后,则通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试;
缺陷报告生成模块,用于根据利用所述缺陷管理应用对所述被测应用执行测试的测试过程中所发现的缺陷而生成缺陷报告;以及
信息收发模块,用于上传所述缺陷报告。
可选地,所述测试用签名包为基于测试工具类的安装包文件。
可选地,所述测试用签名包是通过所述信息收发模块下载之后加载的。
可选地,所述测试用签名包为基于测试工具类的重签名操作而获得的;所述基于测试工具类的重签名操作包括:提供重签名的归档文件包工具,输入所述被测应用的文件信息,根据所述文件信息,利用归档文件包签名工具基于测试工具类生成重签名的安装包文件,所述重签名的安装包文件与所述被测应用具有同样的签名文件。
可选地,所述应用测试装置还包括:监控模块,用于实时监控所述被测应用在测试过程中的网络流量和内存占用量,并将通过实时监控而统计得到网络流量和内存占用量在所述缺陷管理应用的测试页面上予以显示。
可选地,所述应用测试装置还包括:录制模块,用于在所述被测应用被启动时,启动录制操作步骤的功能,在对所述被测应用进行测试时进行录制测试操作以对在测试中所发现的缺陷进行记录。
可选地,所述录制测试操作包括截图操作和录制操作;所述截图操作,用于对显示的出现所述缺陷的当前页面自动截图并将所述截图自动保存至缺陷提交页面;所述录制操作,用于记录所述缺陷被发现前的若干步操作步骤,且以伪代码的形式自动保存至缺陷提交页面的缺陷操作流程描述中。
可选地,在所述截图中还包括指向所述缺陷的涂鸦标注。
本发明提供的应用测试装置,通过带有应用内测试TIA服务的缺陷管理应用,在缺陷管理应用的测试页面直接对移动客户端中的被测应用进行测试,可在测试过程中发现的缺陷进行录制测试操作并据此生成缺陷报告以将所述缺陷报告直接上传提交,整个测试过程及缺陷提交均是缺陷管理应用中实现的,无需在多个应用间进行切换,操作简便且快速高效。
本发明在再一方面提供一种应用测试系统,包括:
应用内测试TIA服务端,提供TIA服务;
移动客户端,与所述TIA服务端通信连接;所述移动客户端上加载有各个应用及带有TIA服务且可显示各个所述应用的缺陷管理应用;所述缺陷管理应用用于在启动后显示加载的各个应用以供从中选取所需的被测应用,并在确定被选中的所述被测应用加载有适配的测试用签名包之后,则通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试,显示发现的缺陷并生成对应所述被测应用的缺陷报告并将所述缺陷报告予以上传;以及
缺陷服务端,与所述移动客户端通信连接,用于接收来自所述移动客户端所上传的对应所述被测应用的缺陷报告并将所述缺陷报告予以保存。
可选地,所述应用测试系统还包括与所述TIA服务端通信连接的重签名客户端,用于进行重签名操作而获得测试用签名包,并将所述测试用签名包上传至所述TIA服务端予以保存以供所述移动客户端从所述TIA服务端下载所述测试用签名包并予以加载。
可选地,所述测试用签名包为基于测试工具类的安装包文件。
可选地,所述测试用签名包为基于测试工具类的重签名操作而获得的;所述基测试工具类的重签名操作包括:提供重签名的归档文件包工具,输入所述被测应用的文件信息,根据所述文件信息,利用归档文件包签名工具基于测试工具类生成重签名的安装包文件,所述重签名的安装包文件与所述被测应用具有同样的签名文件。
可选地,所述移动客户端还包括:实时监控所述被测应用在测试过程中的网络流量和内存占用量,并将通过实时监控而统计得到网络流量和内存占用量在所述缺陷管理应用的测试页面上予以显示。
可选地,所述移动客户端还包括:在所述被测应用被启动时,启动录制操作步骤的功能,在对所述被测应用进行测试时,进行录制测试操作以对在测试中所发现的缺陷进行记录。
可选地,所述录制测试操作包括截图操作和录制操作;所述截图操作,用于对显示的出现所述缺陷的当前页面自动截图并自动保存至缺陷提交页面;所述录制操作,用于记录所述缺陷被发现前的若干步操作步骤,且以伪代码的形式自动保存至缺陷提交页面的缺陷操作流程描述中。
可选地,在所述截图中还包括指向所述缺陷的涂鸦标注。
本发明提供的应用测试系统,其中,在移动客户端中加载有与TIA服务端通信连接以提供TIA服务的缺陷管理应用,利用该缺陷管理应用,可以在缺陷管理应用的测试页面上直接对移动客户端中的应用进行测试,可在测试过程中发现的缺陷进行录制测试操作并据此生成缺陷报告以将所述缺陷报告直接上传提交至缺陷服务端予以保存,整个测试过程及缺陷提交均是缺陷管理应用中实现的,无需在多个应用间进行切换,简化了系统复杂度,测试操作简便且快速高效。
附图说明
图1为本发明应用测试装置在一个实施方式中的结构框图;
图2为本发明应用测试方法的流程示意图;
图3为本发明应用测试系统在一个实施方式中的系统架构图;
图4为本发明应用测试系统在一应用测试中的流程示意图;
图5为缺陷提交页面的在一个实施例中的页面示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
请参阅附图。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1,为本发明应用测试装置在一个实施方式中的结构框图。本发明应用测试装置,用于对加载在移动客户端上的各个应用进行测试,能根据发现的缺陷(bug)而生成缺陷报告并自动上传以备份,简化操作并提高缺陷报告的处理效率。在实际应用中,移动客户端可以是一便携式数据处理设备,包括处理器、存储器、以及显示屏幕等。在实际应用中,移动客户端可以是例如:智能手机、个人数位助理PDA、平板电脑、笔记本电脑、网络机顶盒、车载终端、甚至是可穿戴式设备(例如智能手表)等。在以下实例说明中,所述移动客户端的操作系统包括但不限定于Android操作系统(也可以是例如苹果iOS操作系统、微软WindowsPhone操作系统、以及火狐Firefox OS等),所述移动客户端上所加载的应用为基于Android操作系统的应用。
如图1所示,本发明应用测试装置包括:缺陷管理应用101、应用启动模块103、缺陷报告生成模块105、以及信息收发模块107。
以下对上述各个组成部分进行详细说明。
缺陷管理应用101,加载于移动客户端上,用于对移动客户端上的被测应用进行测试。在本实施例中,在本实施例中,缺陷管理应用101可为自行研发的tBug缺陷管理工具,主要地,缺陷管理应用101带有应用内测试TIA(Testing In App)服务,如此,即可实现:在被测应用中以服务的方式启动,使得整个测试过程中缺陷的提交不需要进行应用的切换,直接在当前被测应用中完成相关任务的处理。
应用启动模块103,用于启动缺陷管理应用101和被测应用。
对于缺陷管理应用101而言:缺陷管理应用101在通过应用启动模块103启动后可自动筛选出当前移动客户端上所加载的所有应用,并通过移动客户端的显示屏幕在缺陷管理应用101中显示出加载在移动客户端上的各个应用,这些应用可以应用列表的形式(例如应用图标及应用名称)展示,如此,测试人员即可据此从该应用列表中选择需要进行测试的被测应用。
其中:自动筛选出当前移动客户端上所加载的所有应用,具体包括:获取移动客户端上已加载的安装包文件的信息,并据此获取针对所述应用的特征信息,所述特征信息包括图标、包名、应用名称、以及版本号中的至少一者。在本实施例中,所述安装包具体为apk(Android Package,Android安装包)文件,移动客户端上加载的应用可以应用列表的形式予以展示,主要通过包管理器PackageManage r可以获取手机端已加载的apk文件的信息,并针对某个应用可以通过ResolveInfo(信息基类)获取该应用的图标、包名以及应用名称等信息。
当某一应用被选中作为被测应用之后,缺陷管理应用101会先确定所述被测应用是否加载有适配的测试用签名包;若确定所述被测应用加载有适配的测试用签名包,则通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试;若确定所述被测应用未加载适配的测试用签名包,则还需要通过信息收发模块107下载经重签名操作获得的测试用签名包,并将下载的所述测试用签名包予以加载之后,才会通过应用启动模块103启动所述被测应用并在缺陷管理应用101的测试页面中对所述被测应用执行测试。在测试过程中,会将发现的缺陷在缺陷管理应用101的测试页面中予以显示并据此生成对应的缺陷报告。
如上,所述测试用签名包为基于测试工具类(在Android操作系统中,所述测试工具类即为instrumentation框架)的apk(Android Package,Android安装包)文件,对于Android操作系统而言,Instrumentation是一种操作系统和上层应用之间的检测机制。当应用运行时,若Instrumentation设置为开启,它将在应用运行前初始化,与应用在同一个进程中,监测应用与系统之间的交互,并对应用进行一定的控制,例如可以监控应用各Activity(Activity为Android应用中的活动页面)的调用情况、启动和结束Activity、对Activity生命周期中的各个状态进行切换,甚至可以向Activity发送按键事件和字符。Instrumentation和Activity有点类似,不同的是Activity需要一个图形界面,而Instrumentation并不需要,可以理解为一种没有图形界面的、具有启动能力、用户监控其他类(用Target Package声明)的工具类。因此,基于测试工具类(例如,instrumententation)的测试用签名包,在启动的时候,能够保证与被测应用在同一个进程中,可以监控被测应用的所有活动,获取其对应的操作事件。
重签名的操作具体包括:提供重签名的归档文件包工具(在本实施例中,归档文件包为jar包。jar,Java Archive,把java程序打包成一个包,供其他人使用),输入所述被测应用的文件信息(例如被测应用的包名、keystore密码存储文件路径、key密码、store密码以及认证链alias等),根据所述文件信息,利用jar包签名工具(jarsigner)基于测试工具类(例如,instrumententation)生成重签名的安装包文件(例如,apk文件),所述重签名的安装包文件(例如,apk文件)与所述被测应用具有同样的签名文件。且,对于测试用签名包而言,在每次应用的测试中,如果被测应用的keystore文件没有改变,那么只需要完成一次针对该应用的重签名操作。
另外,本发明应用测试装置还包括录制模块102,用于在所述被测应用被启动时,启动录制操作步骤的功能,利用所述录制操作步骤的功能,可在通过缺陷管理应用101对所述被测应用进行测试时,进行录制测试操作,对在测试中所发现的缺陷进行记录。在本实施例中,所述录制测试操作包括截图操作和录制操作;在所述截图操作中,对显示的出现所述缺陷的当前页面自动截图并将所述截图自动保存至缺陷提交页面,当然,在所述截图中还包括涂鸦标注,如此,可在截图中明显看到缺陷的位置及其类型;在录制操作中,记录所述缺陷被发现前的若干步操作步骤,且以伪代码的形式自动保存至缺陷提交页面的缺陷操作流程描述中(如图5所示,显示了一种缺陷提交页面的示例)。进一步地,除了上述的记录之外,还可包括将移动客户端的机型、系统版本、网络类型等信息予以记录,从而保留应用缺陷的第一现场。
以截图操作为例:通过获取当前的Activity视图后,使用位图文件Bitmap类里的方法,取得一个位图文件Bitmap,然后用取得的位图文件Bitmap去绘制一张图片并进行保存。
以录制操作为例:为了获取页面每步对应的操作类及属性,需要识别页面元素,通过窗口管理器WindowManager机制的实现类WindowManagerImpl,它会把DecorView(其中,所述DecorView是android中当前页面中所有视图的祖先)添加到mViews数组(其中,所述mViews是用来存放视图的数组),创建对应的ViewRoot(ViewRoot为根视图),实际上DecorView是页面最顶层的View,如果能够获取到它,就可以将其转换成ViewGroup(ViewGroup为视图组),然后遍历其所有子节点从而得到所有的页面元素。运用java的反射机制,正好可以在运行时,获取类的属性和方法。如此,可在每次的操作中记录对应的页面名称、控件类型、控件ID、控件对应的值、控件的执行方法及控件输入的值。例如:在登录页面(loginActivity)中点击了登录按钮,则会去获取的信息有页面名称为loginActivity,控件类型为Button,控件对应的值为“登录”,控件id为R.id.login,执行的方法为Click事件;并把每次操作的记录内容通过AIDL(Android Interface definition language)方式传给缺陷管理应用101并予以保存。
再有,本发明应用测试装置还包括监控模块104,用于实时监控所述被测应用在测试过程中的网络流量和内存占用量,并将通过实时监控而统计得到网络流量和内存占用量在所述缺陷管理应用的测试页面上予以显示。
缺陷报告生成模块105,用于根据利用缺陷管理应用101对所述被测应用执行测试的测试过程中所发现的缺陷而生成缺陷报告。
在本实施例中,对于所述缺陷报告,其包含有与发现的缺陷相关的缺陷信息,所述缺陷信息具体包括:利用截图操作而得到的所述缺陷的当前页面的截(在所述截图中还包括涂鸦标注),利用录制操作而记录的所述缺陷被发现前的(例如:5到10步)操作步骤的伪代码。当然,所述缺陷报告中的缺陷信息还可包括所述缺陷的标题、选择所述缺陷的指派人以及跟该移动客户端相关的系统版本、机型、网络类型等信息等。
信息收发模块107,用于下载与所述被测应用适配的测试用签名包以供加载以及上传所述缺陷报告以供保存。在本实施例中,信息收发模块107可以是3G/LTE无线模块、WiFi网络模块、以及Zigbee(紫蜂)模块等通信传输模块中的任一者。
由上可知,本发明提供的应用测试装置,包括了带有应用内测试TIA服务的缺陷管理应用,通过带有应用内测试TIA服务的缺陷管理应用,在缺陷管理应用的测试页面直接对移动客户端中的被测应用进行测试,可在测试过程中发现的缺陷进行录制测试操作并据此生成缺陷报告以将所述缺陷报告直接上传提交,整个测试过程及缺陷提交均是缺陷管理应用中实现的,无需在多个应用间进行切换,操作简便且快速高效。
本发明提供的应用测试装置,缺陷管理应用采用基于测试工具类(例如,instrumentation)的快速截屏技术,使得图片的截取更方便快捷,无需获取root权限。
本发明提供的应用测试装置,缺陷管理应用可提供操作流程的录制操作,会自动记录应用发现问题前的若干步的操作步骤,以伪代码的形式自动存放在缺陷的描述中,这种方式不仅不需要测试人员额外地描写缺陷重现步骤,以及上传跟该移动客户端相关的系统版本、机型、网络类型等信息,开发人员也能通过此描述信息,快速定位、重现问题。
本发明提供的应用测试装置,在测试过程中,提供网络流量、内存占用量等性能信息的实时监控提供相关的性能数据供测试、开发人员作性能优化参考。
请参阅图2,其显示了本发明应用测试方法的流程示意图。
如图2所示,本发明应用测试方法具体包括:
步骤S201,启动带有应用内测试TIA服务的缺陷管理应用,由所述缺陷管理应用显示加载于移动客户端上的各个应用以供从中选取所需的被测应用。在本实施例中,所述移动客户端的操作系统包括但不限定于Android操作系统(也可以是例如苹果iOS操作系统、微软Windows Phone操作系统、以及火狐Firefox OS等),加载的应用为基于Android操作系统的应用。当然,若所述移动客户端未加载有缺陷管理应用,则还需预先在移动客户端上加载缺陷管理应用。
步骤S203,选择TIA服务,进入应用列表页面。在本实施例中,所述缺陷管理应用会自动筛选出当前移动客户端上所加载的所有应用,且将所筛选出的所有所述应用以应用列表的形式显示。
步骤S205,从显示的包含各个所述应用的应用列表中选中需进行测试的被测应用。
进一步地,自动筛选出当前移动客户端上所加载的所有应用,包括:获取移动客户端上已加载的安装包文件的信息,并据此获取针对所述应用的特征信息,所述特征信息包括图标、包名、应用名称、以及版本号中的至少一者。在本实施例中,所述安装包具体为apk(Android Package,Android安装包)文件。
步骤S207,判断被选中的所述被测应用是否已加载有适配的测试用签名包。在本实施例中,所述测试用签名包为基于测试工具类(在Android操作系统中,所述测试工具类即为instrumentation框架)的安装包文件(例如,apk文件,Android Package,Android安装包)。在步骤S207中,若确定所述被测应用未加载适配的测试用签名包,则进至步骤S209;若确定所述被测应用加载有适配的测试用签名包,则进至步骤S211。
步骤S209,下载经重签名操作获得的测试用签名包并将下载的所述测试用签名包予以加载。在这里,所谓未加载适配的测试用签名包包括两种情形:一、未加载测试用签名包;二、加载有测试用签名包,但加载的测试用签名包由于未及时更新而不能适配于更新的被测应用(被测应用的keystore密码存储文件发生改变)。在本实施例中,所述测试用签名包为基于Android操作系统中instrumentation的apk(Android Package,Android安装包)文件,对于Android操作系统而言,Instrumentation是一种操作系统和上层应用之间的检测机制。当应用运行时,若Instrumentation设置为开启,它将在应用运行前初始化,与应用在同一个进程中,监测应用与系统之间的交互,并对应用进行一定的控制,例如可以监控应用各Activity的调用情况、启动和结束Activity、对Activity生命周期中的各个状态进行切换,甚至可以向Activity发送按键事件和字符。Instrumentation和Activity有点类似,不同的是Activity需要一个图形界面,而Instrumentation并不需要,可以理解为一种没有图形界面的、具有启动能力、用户监控其他类(用Target Package声明)的工具类。因此,基于instrumententation的测试用签名包,在启动的时候,能够保证与被测应用在同一个进程中,可以监控被测应用的所有活动,获取其对应的操作事件。
对所述被测应用进行基于测试工具类(例如,instrumentation)的重签名操作具体包括:提供重签名的归档文件包工具(在本实施例中,归档文件包为jar包。jar,JavaArchive,java归档文件),输入被测应用的文件信息(例如被测应用的包名、keystore密码存储文件路径、key密码、store密码以及认证链alias等),根据所述文件信息,利用归档文件包签名工具(例如,jar包签名工具,jarsigner)基于测试工具类(例如,instrumentation)生成重签名的安装包文件(例如,apk文件),所述重签名的安装包文件(例如,apk文件)与所述被测应用具有同样的签名文件。接着,进至步骤S211。
步骤S211,启动所述被测应用。在本实施例中,通过重签名的测试用签名包(重签名的apk文件)来启动所述被测应用,同时启动录制操作步骤的功能,用于记录每次的操作内容。
步骤S213,在所述缺陷管理应用的测试页面中对所述被测应用执行测试。
步骤S215,判断在测试过程中是否有发现缺陷。若没有发现缺陷,则返回步骤S213,继续进行测试;若发现有缺陷,则进至步骤S217。
所述缺陷管理应用可提供一TIA按钮控件,提供相应的操控。在本实施例中,当发现有缺陷时,则可由测试人员在步骤S217中点击该TIA按钮控件,则获取录制操作步骤功能的内容,用于对在测试中所发现的缺陷进行记录。
所述录制操作步骤功能包括截图操作和录制操作,具体操作流程如下:步骤S219,利用所述截图操作,对显示的出现所述缺陷的当前页面自动截图;以及利用录制操作,记录所述缺陷被发现前的若干步(例如:5到10步)操作步骤的伪代码。步骤S221,跳转到涂鸦页面,在对出现所述缺陷的当前页面的截图上进行涂鸦标注。步骤S223,跳转到缺陷提交页面(如图5所示),自动添加截图和操作步骤的伪代码,填写与所述缺陷相关的必选信息。在本实施例中,所述必选信息包括:所述缺陷的标题以及选择所述缺陷的指派人等。进一步地,除了上述的记录之外,还可包括将移动客户端的机型、系统版本、网络类型等信息予以记录,从而保留应用缺陷的第一现场。
步骤S225,在完成缺陷提交页面的输入操作之后,将所述缺陷提交页面作为缺陷报告予以上传以供保存。随后,返至步骤S213,自动跳转到测试页面以对所述被测应用的剩余部分继续进行测试。
特别地,在本发明中,所述缺陷管理应用还包括:实时监控所述被测应用在测试过程中的网络流量和内存占用量。因此,当需要结束针对所述被测应用的测试时(包括所述被测应用在测试中途的主动终结或所述被测应用在测试完成后的终结),则如步骤S227中长按该TIA按钮控件之后,在步骤S229中,统计出在步骤S227之前的整个测试过程中的网络流量和内存占用量并予以显示。在本实施例中,网络流量和内存占用量的使用情况可通过一弹出框而予以显示,便于测试人员获悉。
后续,针对当前所述待测应用的测试完成后,返回至步骤S203中的应用列表页面,以供测试人员选择其他的被测应用进行测试。
由上可知,本发明提供应用测试方法,在带有应用内测试TIA服务的缺陷管理应用的测试页面上直接对加载了测试用签名包的被测应用进行测试,整个测试过程均是缺陷管理应用中实现的,无需在多个应用间进行切换,在测试工程中,进行录制测试操作,对在测试中所发现的缺陷进行记录,根据发现的缺陷而生成缺陷报告并将所述缺陷报告直接上传提交,操作简便且快速高效。
本发明提供的应用测试方法,采用基于测试工具类(例如,instrumentation)的快速截屏技术,使得图片的截取更方便快捷,无需获取root权限。
本发明提供的应用测试方法,提供操作流程的录制操作,会自动记录应用发现问题前的若干步的操作步骤,以伪代码的形式自动存放在缺陷的描述中,这种方式不仅不需要测试人员额外地描写缺陷重现步骤,而且开发人员也能通过此描述信息,快速定位、重现问题。
本发明提供的应用测试方法,在测试过程中,提供网络流量、内存占用量、移动客户端的机型、系统版本及网络类型等性能信息的实时监控提供相关的性能数据供测试、开发人员作性能优化参考。
请参阅图3,为本发明的应用测试系统在一个实施方式中的系统架构图。本发明应用的测试系统用于对加载于移动客户端中的应用进行测试,能根据发现的缺陷(bug)而生成缺陷报告并自动上传以备份,简化操作并提高缺陷报告的处理效率。
如图3所示,本发明应用的测试系统包括:移动客户端、重签名客户端20、应用内测试TIA服务端30、以及缺陷服务端40。在本发明实施例中,移动客户端的操作系统包括但不限定于Android操作系统(也可以是例如苹果iOS操作系统、微软Windows Phone操作系统、以及火狐Firefox OS等),加载的应用为基于Android操作系统的应用。
以下对上述各个组成部分进行详细说明。
应用内测试服务端30(以下简写为TIA服务端30),提供TIA服务。TIA(Testing InApp)服务,即:在被测应用中以服务的方式启动,使得整个测试过程中缺陷的提交不需要进行应用的切换,直接在当前被测应用中完成相关任务的处理。
重签名客户端20,与TIA服务端30通信连接的,用于进行重签名操作而获得测试用签名包,并将所述测试用签名包上传至所述TIA服务端予以保存以供所述移动客户端下载所述测试用签名包并予以加载。在本实施例中,所述测试用签名包为基于测试工具类(在Android操作系统中,所述测试工具类即为instrumentation框架)的安装包文件(例如,apk文件,Android Package,Android安装包),所述测试用签名包为基于测试工具类(例如,instrumentation)的重签名操作而获得的。所述基于测试工具类(例如,instrumentation)的重签名操作包括:提供重签名的归档文件包工具(在本实施例中,归档文件包为jar包。jar,Java Archive,java归档文件),输入应用的文件信息(例如被测应用的包名、keystore密码存储文件路径、key密码、store密码以及认证链alias等),根据所述文件信息,利用归档文件包签名工具(例如,jar包签名工具,jarsigner)基于测试工具类(例如,instrumentation)生成重签名的安装包文件(例如,apk文件),所述重签名的安装包文件(例如,apk文件)与所述被测应用具有同样的签名文件。且,对于测试用签名包而言,在每次应用的测试中,如果被测应用的keystore文件没有改变,那么只需要完成一次针对该应用的重签名操作。
移动客户端与所述TIA服务端30和缺陷服务端40通信连接,移动客户端上加载有各个应用及带有TIA服务的缺陷管理应用。
在实际应用中,移动客户端可以是任一便携式数据处理设备,例如:智能手机、个人数位助理PDA、平板电脑、笔记本电脑、网络机顶盒、以及车载终端等。
所述缺陷管理应用用于显示加载的各个应用并对其中的被测应用执行测试。利用所述缺陷管理应用可实现对移动客户端上加载的各个应用的测试操作。
具体地,所述缺陷管理应用可在启动后显示包含各个所述应用的应用列表以供从中选择被测应用,并在确定被选中的被测应用加载有所述TIA服务端所提供的适配的测试用签名包之后而启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试,将测试过程中发现的缺陷予以显示并生成对应所述被测应用的缺陷报告,最后将所述缺陷报告予以上传。
对于所述缺陷报告,其包含有与发现的缺陷相关的缺陷信息,为此,所述缺陷管理应用还具有录制测试操作。在本实施例中,在所述被测应用被启动的同时,启动录制操作步骤的功能,在对所述被测应用进行测试时,进行录制测试操作以对在测试中所发现的缺陷进行记录。当在测试过程中发现有缺陷时,则可通过所述录制测试操作而获取录制操作步骤功能的内容,从而可以对在测试中所发现的缺陷进行记录。具体地,所述录制测试操作包括截图操作和录制操作:利用所述截图操作,对显示的出现所述缺陷的当前页面自动截图并并将所述截图,当然,在所述截图中还包括涂鸦标注,如此,可在截图中明显看到缺陷的位置及其类型;利用录制操作,记录所述缺陷被发现前的(例如:5到10步)操作步骤的伪代码,自动保存至缺陷提交页面。当然,所述缺陷报告中的缺陷信息还可包括所述缺陷的标题以及选择所述缺陷的指派人等。进一步地,除了上述的记录之外,还可包括将移动客户端的机型、系统版本、网络类型等信息予以记录,从而保留应用缺陷的第一现场。
以截图操作为例:通过获取当前的Activity视图后,使用位图文件Bitmap类里的方法,取得一个位图文件Bitmap,然后用取得的位图文件Bitmap去绘制一张图片并进行保存。
以录制操作为例:为了获取页面每步对应的操作类及属性,需要识别页面元素,通过窗口管理器WindowManager窗口机制的实现类WindowManagerImpl,它会把DecorView添加到mViews数组,创建对应的ViewRoot(根视图),实际上DecorView是页面最顶层的View,如果能够获取到它,就可以将其转换成ViewGroup(视图组),在此,所述ViewGroup是指容纳视图的容器,既可以包含作为叶子节点的视图,也可以包含作为更低层次的子ViewGroup,然后遍历其所有子节点从而得到所有的页面元素。运用java的反射机制,正好可以在运行时,获取类的属性和方法。如此,可在每次的操作中记录对应的页面名称、控件类型、控件ID、控件对应的值、控件的执行方法及控件输入的值。例如:在登录页面(loginActivity)中点击了登录按钮,则会去获取的信息有页面名称为loginActivity,控件类型为Button,控件对应的值为“登录”,控件id为R.id.login,执行的方法为Click事件;并把每次操作的记录内容通过AIDL方式传给缺陷管理应用101并予以保存。
额外地,还包括:实时监控所述被测应用在测试过程中的网络流量和内存占用量,以及统计出整个测试过程中的网络流量和内存占用量并予以显示。
缺陷服务端40,与移动客户端通信连接,用于接收来自移动客户端所上传的对应所述被测应用的缺陷报告并将所述缺陷报告予以保存,保存的所述缺陷报告可供测试人员查阅并针对所述缺陷进行修正等。
请参阅图4,其显示了本发明应用的测试系统在一应用的测试中的流程示意图。
如图4所示,所述应用的测试方法具体包括:
步骤S401,在重签名客户端处对应用进行重签名操作。在本实施例中,所述重签名操作具体为基于测试工具类(在Android操作系统中,所述测试工具类即为instrumentation框架)的重签名操作,包括:提供重签名的归档文件包工具(在本实施例中,归档文件包为jar包。jar,Java Archive,java归档文件),输入被测应用的文件信息(例如被测应用的包名、keystore密码存储文件路径、key密码、store密码以及认证链alias等),根据所述文件信息,利用归档文件包签名工具(例如,jar包签名工具,jarsigner)基于测试工具类(例如,instrumentation)生成重签名的安装包文件(例如,apk文件),所述重签名的安装包文件(例如,apk文件)与所述被测应用具有同样的签名文件,这样做可以与应用在同一个进程中,监测被测应用与系统之间的交互,并对应用进行一定的控制。另外,在每次应用的测试中,如果被测应用的keystore文件没有改变,那么只需要完成一次针对该应用的重签名操作。
步骤S403,由重签名客户端将经重签名操作所生成的安装包文件上传至TIA服务端并由TIA服务端予以保存。
步骤S405,在移动客户端上启动带有应用内测试TIA服务的缺陷管理应用。在本实施例中,若所述移动客户端未加载有缺陷管理应用,则还需预先在移动客户端上加载缺陷管理应用。
步骤S407,选择TIA服务,进入应用列表页面。在本实施例中,所述缺陷管理应用会自动筛选出当前移动客户端上所加载的所有应用,且将所筛选出的所有所述应用以应用列表的形式显示。
步骤S409,从显示的包含各个所述应用的应用列表中选中需进行测试的被测应用。
进一步地,自动筛选出当前移动客户端上所加载的所有应用,包括:获取移动客户端上已加载的安装包文件(例如,apk文件,Android Package,Android安装包)的信息,并据此获取针对所述应用的特征信息,所述特征信息包括图标、包名、应用名称、以及版本号中的至少一者。
应用可以应用列表的形式予以展示,主要通过包管理器PackageManager,可以获取手机端已加载的安装包文件(例如,apk文件,Android Package,Android安装包)的信息,并针对某个应用可以通过ResolveInfo(信息基类)获取该应用的图标、包名以及应用名称等信息。
步骤S411,由移动客户端向TIA服务端发送请求,从TIA服务端下载与被测应用适配的测试用签名包并在移动客户端上加载适配的测试用签名包。在本实施例中,一般地,适配的测试用测试包即为最近签名的安装包文件(例如,apk文件)。在实际应用中,若移动客户端中已加载有适配的测试用签名包,则可省去该步骤S411而径自至步骤S413。
步骤S413,启动所述被测应用,在所述缺陷管理应用的测试页面中对所述被测应用执行测试。在本实施例中,通过重签名的测试用签名包(重签名的apk文件)来启动所述被测应用。同时,启动录制操作步骤的功能以用于记录每次的操作内容,以及实时监控所述被测应用在测试过程中的网络流量和内存占用量。在本实施例中,是通过所述被测应用的包名以及运行在移动客户端上分配的用户ID来进行网络流量及内存占用量的监控。
步骤S415,若在测试过程中,发现有缺陷,则通过所述录制测试操作而获取录制操作步骤功能的内容,对在测试中所发现的缺陷进行记录,并生成缺陷报告。在本实施例中,若没有发现缺陷,则返回步骤S411,继续进行测试。当发现有缺陷时,则可由测试人员点击一TIA按钮控件,则获取录制操作步骤功能的内容,用于对在测试中所发现的缺陷进行记录。
所述启动录制测试操作包括截图操作和录制操作,具体操作流程如下:利用所述截图操作,对显示的出现所述缺陷的当前页面自动截图;以及利用录制操作,记录所述缺陷被发现前的若干步(例如:5到10步)操作步骤的伪代码。跳转到涂鸦页面,在对出现所述缺陷的当前页面的截图上进行涂鸦标注。跳转到缺陷提交页面,自动添加截图和操作步骤的伪代码,填写与所述缺陷相关的必选信息。在本实施例中,所述必选信息包括:所述缺陷的标题以及选择所述缺陷的指派人等(如图5所示,显示了一种缺陷提交页面的示例)。进一步地,除了上述的记录之外,还可包括移动客户端的机型、系统版本、网络类型等信息。
以截图操作为例:通过获取当前的Activity视图后,使用位图文件Bitmap类里的方法,取得一个位图文件Bitmap,然后用取得的位图文件Bitmap去绘制一张图片并进行保存。
以录制操作为例:为了获取页面每步对应的操作类及属性,需要识别页面元素,通过窗口管理器(WindowManager)窗口机制的实现类WindowManager Impl,它会把DecorView添加到mViews数组,创建对应的ViewRoot(根视图),实际上DecorView是页面最顶层的View,如果能够获取到它,就可以将其转换成ViewGroup(视图组),然后遍历其所有子节点从而得到所有的页面元素。运用java的反射机制,正好可以在运行时,获取类的属性和方法。如此,可在每次的操作中记录对应的页面名称、控件类型、控件ID、控件对应的值、控件的执行方法及控件输入的值。例如:在登录页面(loginActivity)中点击了登录按钮,则会去获取的信息有页面名称为loginActivity,控件类型为Button,控件对应的值为“登录”,控件id为R.id.login,执行的方法为Click事件;并把每次操作的记录内容通过AIDL方式传给缺陷管理应用并予以保存。
步骤S417,由移动客户端将所述缺陷报告上传至缺陷服务端,由缺陷服务端予以保存。在本实施例中,在完成缺陷提交页面的输入操作之后,由移动客户端将所述缺陷提交页面作为缺陷报告上传至缺陷服务端,由缺陷服务端予以保存。
随后,返至步骤S413,自动跳转到测试页面以对所述被测应用的剩余部分继续进行测试。
最后,于步骤S419,当结束所述被测应用的测试之后,统计出在整个测试过程中的网络流量和内存占用量并予以显示。在本实施例中,网络流量和内存占用量的使用情况可通过一弹出框而予以显示,便于测试人员获悉。
由上可知,本发明提供的应用的测试系统,在移动客户端中加载有与TIA服务端通信连接以提供TIA服务的缺陷管理应用,利用该缺陷管理应用,可以在缺陷管理应用的测试页面上直接对移动客户端中的应用进行测试,可在测试过程中发现的缺陷进行录制测试操作并据此生成缺陷报告以将所述缺陷报告直接上传提交至缺陷服务端予以保存,整个测试过程及缺陷提交均是缺陷管理应用中实现的,无需在多个应用间进行切换,简化了系统复杂度,测试操作简便且快速高效。
本发明提供的应用的测试系统,采用基于测试工具类(例如,instrumentation)的快速截屏技术,使得图片的截取更方便快捷,无需获取root权限。
本发明提供的应用的测试系统,提供操作流程的录制操作,会自动记录应用发现问题前的若干步的操作步骤,以伪代码的形式自动存放在缺陷的描述中,这种方式不仅不需要测试人员额外地描写缺陷重现步骤,而且开发人员也能通过此描述信息,快速定位、重现问题。
本发明提供的应用的测试系统,在测试过程中,提供网络流量、内存占用量、移动客户端的机型、系统版本及网络类型等性能信息的实时监控提供相关的性能数据供测试、开发人员作性能优化参考。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (21)

1.一种应用测试方法,其特征在于,包括:
启动带有应用内测试TIA服务的缺陷管理应用,由所述缺陷管理应用显示加载于移动客户端上的各个应用以供从中选取所需的被测应用;
在确定被选中的所述被测应用加载有适配的测试用签名包之后,通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试,其中,在启动所述被测应用时,启动录制操作步骤的功能,用于在对所述被测应用进行测试时进行录制测试操作,以对在测试中所发现的缺陷进行记录,其中,所述录制测试操作包括:当在对所述被测应用进行测试并发现有缺陷时,对显示的出现有所述缺陷的当前页面进行截图并将所述截图保存至缺陷提交页面,记录所述缺陷被发现前的若干步操作步骤并将所述若干操作步骤以伪代码的形式保存至缺陷提交页面的缺陷操作流程描述中;
根据所述被测应用在测试过程中所发现的缺陷生成缺陷报告;以及
上传所述缺陷报告。
2.如权利要求1所述的应用测试方法,其特征在于:
在启动带有应用内测试TIA服务的缺陷管理应用之前还包括:预先在移动客户端上加载缺陷管理应用;以及
启动带有应用内测试TIA服务的缺陷管理应用之后,筛选出当前移动客户端上所加载的所有应用,且将所筛选出的所有所述应用以应用列表的形式显示。
3.如权利要求1所述的应用测试方法,其特征在于,所述测试用签名包为基于测试工具类的安装包文件。
4.如权利要求3所述的应用测试方法,其特征在于,筛选出当前移动客户端上所加载的所有应用,包括:获取当前移动客户端上已加载的安装包文件的信息,并据此获取针对所述应用的特征信息,所述特征信息包括图标、包名、应用名称、以及版本号中的至少一者。
5.如权利要求4所述的应用测试方法,其特征在于:若确定被选中的所述被测应用未加载有适配的测试用签名包时,则还包括对所述被测应用进行重签名操作和将进行重签名操作后的测试用签名包加载于所述移动客户端。
6.如权利要求5所述的应用测试方法,其特征在于,进行重签名操作,包括:
提供重签名的归档文件包工具,输入所述被测应用的文件信息,根据所述文件信息,利用归档文件包签名工具基于测试工具类生成重签名的安装包文件,所述重签名的安装包文件与所述被测应用具有同样的签名文件;将所述重签名的安装包文件予以保存;
将进行重签名操作后的测试用签名包加载于所述移动客户端,包括:
当被测应用被选中以进行测试时,下载所述重签名的安装包文件于所述移动客户端并在所述移动客户端上予以加载。
7.如权利要求1所述的应用测试方法,其特征在于,还包括:
实时监控所述被测应用在测试过程中的网络流量和内存占用量;以及
在完成测试后,统计出整个测试过程中的网络流量和内存占用量并予以显示。
8.如权利要求7所述的应用测试方法,其特征在于,
在对显示的出现有所述缺陷的当前页面进行截图之前还包括:对当前页面下出现的所述缺陷进行涂鸦标注;
对显示的出现有所述缺陷的当前页面进行截图所得的截图中包括有指向所述缺陷的涂鸦标注。
9.如权利要求1所述的应用测试方法,其特征在于,还包括:
在所述缺陷提交页面中,填写所述缺陷的标题以及选择所述缺陷的指派人;
在完成上述输入操作之后,将所述缺陷提交页面作为缺陷报告予以上传以供保存;以及
完成缺陷报告的提交之后,回到所述被测应用的测试页面以对所述被测应用的剩余部分继续进行测试。
10.一种应用测试装置,其特征在于,包括:
应用启动模块,用于:启动带有应用内测试TIA服务的缺陷管理应用,所述缺陷管理应用用于在启动后显示加载于移动客户端上的各个应用以供从中选取所需的被测应用;在确定被选中的所述被测应用加载有适配的测试用签名包之后,则通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试;
录制模块,用于在所述被测应用被启动时,启动录制操作步骤的功能,在对所述被测应用进行测试时进行录制测试操作以对在测试中所发现的缺陷进行记录,其中,所述录制测试操作包括截图操作和录制操作;所述截图操作,用于对显示的出现所述缺陷的当前页面自动截图并将所述截图自动保存至缺陷提交页面;所述录制操作,用于记录所述缺陷被发现前的若干步操作步骤,且以伪代码的形式自动保存至缺陷提交页面的缺陷操作流程描述中;
缺陷报告生成模块,用于根据利用所述缺陷管理应用对所述被测应用执行测试的测试过程中所发现的缺陷而生成缺陷报告;以及
信息收发模块,用于上传所述缺陷报告。
11.如权利要求10所述的应用测试装置,其特征在于,所述测试用签名包为基于测试工具类的安装包文件。
12.如权利要求11所述的应用测试装置,其特征在于,所述测试用签名包是通过所述信息收发模块下载之后加载的。
13.如权利要求12所述的应用测试装置,其特征在于,
所述测试用签名包为基于测试工具类的重签名操作而获得的;
所述基于测试工具类的重签名操作包括:提供重签名的归档文件包工具,输入所述被测应用的文件信息,根据所述文件信息,利用归档文件包签名工具基于测试工具类生成重签名的安装包文件,所述重签名的安装包文件与所述被测应用具有同样的签名文件。
14.如权利要求10所述的应用测试装置,其特征在于,还包括监控模块,用于实时监控所述被测应用在测试过程中的网络流量和内存占用量,并将通过实时监控而统计得到网络流量和内存占用量在所述缺陷管理应用的测试页面上予以显示。
15.如权利要求10所述的应用测试装置,其特征在于,在所述截图中还包括指向所述缺陷的涂鸦标注。
16.一种应用测试系统,其特征在于,包括:
应用内测试TIA服务端,提供TIA服务;
移动客户端,与所述TIA服务端通信连接;所述移动客户端上加载有各个应用及带有TIA服务且可显示各个所述应用的缺陷管理应用;所述缺陷管理应用用于在启动后显示加载的各个应用以供从中选取所需的被测应用,并在确定被选中的所述被测应用加载有适配的测试用签名包之后,则通过所述测试用签名包来启动所述被测应用并在所述缺陷管理应用的测试页面中对所述被测应用执行测试,显示发现的缺陷并生成对应所述被测应用的缺陷报告并将所述缺陷报告予以上传,其中,在所述被测应用被启动时,所述移动客户端启动录制操作步骤的功能,在对所述被测应用进行测试时,进行录制测试操作以对在测试中所发现的缺陷进行记录,所述录制测试操作包括截图操作和录制操作;所述截图操作,用于对显示的出现所述缺陷的当前页面自动截图并自动保存至缺陷提交页面;所述录制操作,用于记录所述缺陷被发现前的若干步操作步骤,且以伪代码的形式自动保存至缺陷提交页面的缺陷操作流程描述中;以及
缺陷服务端,与所述移动客户端通信连接,用于接收来自所述移动客户端所上传的对应所述被测应用的缺陷报告并将所述缺陷报告予以保存。
17.如权利要求16所述的应用测试系统,其特征在于,还包括与所述TIA服务端通信连接的重签名客户端,用于进行重签名操作而获得测试用签名包,并将所述测试用签名包上传至所述TIA服务端予以保存以供所述移动客户端从所述TIA服务端下载所述测试用签名包并予以加载。
18.如权利要求17所述的应用测试系统,其特征在于,所述测试用签名包为基于测试工具类的安装包文件。
19.如权利要求18所述的应用测试系统,其特征在于,
所述测试用签名包为基于测试工具类的重签名操作而获得的;
所述基于测试工具类的重签名操作包括:提供重签名的归档文件包工具,输入所述被测应用的文件信息,根据所述文件信息,利用归档文件包签名工具基于测试工具类生成重签名的安装包文件,所述重签名的安装包文件与所述被测应用具有同样的签名文件。
20.如权利要求16所述的应用测试系统,其特征在于,所述移动客户端还包括:实时监控所述被测应用在测试过程中的网络流量和内存占用量,并将通过实时监控而统计得到网络流量和内存占用量在所述缺陷管理应用的测试页面上予以显示。
21.如权利要求16所述的应用测试系统,其特征在于,在所述截图中还包括指向所述缺陷的涂鸦标注。
CN201410746724.0A 2014-12-08 2014-12-08 应用的测试方法、测试装置及测试系统 Active CN105740138B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410746724.0A CN105740138B (zh) 2014-12-08 2014-12-08 应用的测试方法、测试装置及测试系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410746724.0A CN105740138B (zh) 2014-12-08 2014-12-08 应用的测试方法、测试装置及测试系统

Publications (2)

Publication Number Publication Date
CN105740138A CN105740138A (zh) 2016-07-06
CN105740138B true CN105740138B (zh) 2018-12-21

Family

ID=56237983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410746724.0A Active CN105740138B (zh) 2014-12-08 2014-12-08 应用的测试方法、测试装置及测试系统

Country Status (1)

Country Link
CN (1) CN105740138B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106845162B (zh) * 2016-12-20 2020-05-26 北京五八信息技术有限公司 一种重签名方法及装置
CN106844204B (zh) * 2017-01-11 2020-11-13 福建星网视易信息系统有限公司 一种利用移动终端生成缺陷报告的方法及系统
CN107480015B (zh) * 2017-07-04 2020-12-01 网易(杭州)网络有限公司 负载测试方法、装置、系统、存储介质与压测服务器
CN107368413A (zh) * 2017-07-12 2017-11-21 网易有道信息技术(北京)有限公司 一种提交漏洞信息的方法和装置
CN107463497A (zh) * 2017-07-24 2017-12-12 微梦创科网络科技(中国)有限公司 记录移动应用中bug的方法及系统
CN108089990A (zh) * 2018-01-17 2018-05-29 北京网信云服信息科技有限公司 移动软件的缺陷提交方法、客户端、服务端和管理系统
CN108132888A (zh) * 2018-01-17 2018-06-08 北京网信云服信息科技有限公司 移动软件的缺陷提交方法、客户端、服务端和管理系统
CN108595329B (zh) * 2018-04-23 2022-08-26 腾讯科技(深圳)有限公司 一种应用测试方法、装置及计算机存储介质
CN108959092B (zh) * 2018-07-09 2022-03-18 中国联合网络通信集团有限公司 软件行为分析方法及系统
CN109101428B (zh) * 2018-08-21 2021-11-05 宜人恒业科技发展(北京)有限公司 一种ui自动化测试系统
CN109388577A (zh) * 2018-10-31 2019-02-26 江苏电力信息技术有限公司 一种以质量检测数值方式驱动的软件项目管理方法
CN111611163A (zh) * 2020-05-21 2020-09-01 携程计算机技术(上海)有限公司 移动终端及其应用程序内缺陷文档的处理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019942A (zh) * 2012-12-31 2013-04-03 广东欧珀移动通信有限公司 一种基于安卓系统的待测应用自动测试方法和系统
CN103577313A (zh) * 2012-07-27 2014-02-12 腾讯科技(深圳)有限公司 一种移动终端应用程序测试方法及装置
CN103927255A (zh) * 2013-01-16 2014-07-16 腾讯科技(深圳)有限公司 基于云测试系统的软件测试方法、云测试系统及其客户端
CN104035869A (zh) * 2014-06-19 2014-09-10 科大讯飞股份有限公司 一种应用的评测方法、终端及服务器
CN104050076A (zh) * 2013-03-12 2014-09-17 阿里巴巴集团控股有限公司 移动终端上的应用软件测试方法、装置及系统
CN104063324A (zh) * 2014-07-10 2014-09-24 上海斐讯数据通信技术有限公司 一种Monkey测试方法及系统
CN104105124A (zh) * 2013-04-08 2014-10-15 南京理工大学常熟研究院有限公司 基于Android智能移动终端的流量监测系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090307763A1 (en) * 2008-06-05 2009-12-10 Fiberlink Communications Corporation Automated Test Management System and Method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577313A (zh) * 2012-07-27 2014-02-12 腾讯科技(深圳)有限公司 一种移动终端应用程序测试方法及装置
CN103019942A (zh) * 2012-12-31 2013-04-03 广东欧珀移动通信有限公司 一种基于安卓系统的待测应用自动测试方法和系统
CN103927255A (zh) * 2013-01-16 2014-07-16 腾讯科技(深圳)有限公司 基于云测试系统的软件测试方法、云测试系统及其客户端
CN104050076A (zh) * 2013-03-12 2014-09-17 阿里巴巴集团控股有限公司 移动终端上的应用软件测试方法、装置及系统
CN104105124A (zh) * 2013-04-08 2014-10-15 南京理工大学常熟研究院有限公司 基于Android智能移动终端的流量监测系统
CN104035869A (zh) * 2014-06-19 2014-09-10 科大讯飞股份有限公司 一种应用的评测方法、终端及服务器
CN104063324A (zh) * 2014-07-10 2014-09-24 上海斐讯数据通信技术有限公司 一种Monkey测试方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"科大讯飞手机测试团队重磅推出第三方应用性能测试工具itest";好色现任11;《http://bbs.hiapk.com/thread-16076964-1-1.html》;20141022;第1-4页 *

Also Published As

Publication number Publication date
CN105740138A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
CN105740138B (zh) 应用的测试方法、测试装置及测试系统
US10372600B2 (en) Systems and methods for automated web performance testing for cloud apps in use-case scenarios
US9176851B2 (en) Utilizing intelligent automated scripts to test software applications
CN108399132A (zh) 一种调度测试方法、装置及存储介质
CN104794049B (zh) 应用程序测试方法和装置
CN105677571B (zh) 移动终端软件兼容性测试装置及方法
CN104050076A (zh) 移动终端上的应用软件测试方法、装置及系统
CN105183630B (zh) 应用程序测试方法及装置
CN107832207A (zh) 接口性能测试方法、装置、存储介质和计算机设备
CN106708715A (zh) 自动化测试方法及装置
CN108345543A (zh) 一种数据处理方法、装置、设备及存储介质
CN110716853A (zh) 一种测试脚本录制方法、应用程序测试方法和相关装置
CN103577309A (zh) 自动化测试的方法及装置
Akour et al. Mobile software testing: Thoughts, strategies, challenges, and experimental study
CN109711972A (zh) 合同生成方法、装置、设备及可读存储介质
CN107357728A (zh) 测试软件的方法和电子设备
CN117241276B (zh) 一种面向移动应用的检测工具及检测方法、系统及设备
CN112363932B (zh) 待测试业务对象的测试方法及装置、电子装置
US9852048B2 (en) Simulating process variable changes during process runtime
CN112416734A (zh) 测试的方法、装置以及存储介质
CN106066874A (zh) 对象处理方法及终端
CN114510305B (zh) 模型训练方法、装置、存储介质及电子设备
CN105339974B (zh) 模拟传感器
CN110297754A (zh) 一种测试信息反馈方法及系统
Park et al. Self-adaptive middleware framework for internet of things

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