CN105094783A - 安卓应用稳定性测试的方法及装置 - Google Patents
安卓应用稳定性测试的方法及装置 Download PDFInfo
- Publication number
- CN105094783A CN105094783A CN201410211591.7A CN201410211591A CN105094783A CN 105094783 A CN105094783 A CN 105094783A CN 201410211591 A CN201410211591 A CN 201410211591A CN 105094783 A CN105094783 A CN 105094783A
- Authority
- CN
- China
- Prior art keywords
- test
- monkey
- unit
- preset
- operation record
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 397
- 238000000034 method Methods 0.000 title claims abstract description 66
- 241000282693 Cercopithecidae Species 0.000 claims abstract description 207
- 230000007547 defect Effects 0.000 claims description 63
- 238000012430 stability testing Methods 0.000 claims description 22
- 230000001960 triggered effect Effects 0.000 claims description 8
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 230000015572 biosynthetic process Effects 0.000 claims 1
- 238000003786 synthesis reaction Methods 0.000 claims 1
- 238000012423 maintenance Methods 0.000 abstract description 11
- 230000008569 process Effects 0.000 abstract description 9
- 230000002159 abnormal effect Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000009434 installation Methods 0.000 description 6
- 230000010354 integration Effects 0.000 description 6
- 238000013112 stability test Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 238000001914 filtration Methods 0.000 description 3
- 238000010998 test method Methods 0.000 description 3
- 238000011990 functional testing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000001583 randomness test Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种安卓应用稳定性测试的方法及装置,涉及终端应用测试领域,用于解决monkey工具测试覆盖不全面,以及monkeyrunner工具维护成本高、复用度低的问题。方法包括:根据预设配置项确定测试类型及待测试数据,测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试;如果测试类型为monkey测试,则根据monkey测试语句中的各测试参数对待测试数据进行monkey测试;如果测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对待测试数据进行monkeyrunner测试。主要应用于终端应用测试的过程中。
Description
技术领域
本发明涉及终端应用测试领域,尤其涉及一种安卓应用稳定性测试的方法及装置。
背景技术
随着Android系统的普及和智能机使用量的飞速增长,Android应用程序数量也以数以千万计的速度在增加,平均每天有数百款新软件发布或者更新。安卓Android应用程序的快速开发和发布,对产品质量带来较大考验。如何在敏捷开发模式下,在有限的时间和人力的投入中,快速和高质量的完成软件产品的测试,对终端测试行业提出了新的挑战。对传统的PC端程序而言,测试工具和自动化测试方案已经有成熟方案,如微软测试体系以快速测试工具(QuicktestProfessional,简称QTP)、兼容测试(CompatibilityTestSuite,简称CTS)等。而对于新兴的智能终端测试,则缺乏较为成熟的自动化稳定性测试工具或自动化测试平台。稳定性测试是一种通过多次(成千上万次)长时间(连续工作)对应用进行操作,以简要应用是否具备在多次长时间运行下的稳定性的测试。
经典测试理论中自动化测试主要有黑盒测试和白盒测试。白盒测试是通过程序的源代码进行测试而不使用用户界面;这种类型的测试需要从代码句法发现内部代码在算法、溢出、路径、条件等等中的缺点或者错误,进而加以修正。黑盒测试又被称为功能测试,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,对应用程序进行操作,验证输出或响应结果是否和预期值一致。白盒测试虽然能够发现代码内部逻辑问题,但是需要测试人员熟悉代码,且功能较为完备的程序代码从几万行到几百万行不等,需要花费测试人员较多时间才能熟悉整个代码逻辑并设计相关测试用例,投入产出比较低。黑盒测试对测试人员的要求相对较低,只需要在熟悉产品功能需求之后就可以开始进行测试,同时,黑盒测试投入的人力成本较白盒测试低,测试人员仅需具有简单测试基础和Android使用基础即可进行Android应用的功能测试,这种方式也被称为手工测试。因此从测试成本上的角度出发,目前智能终端中Android系统的测试,通常采用黑盒测试。
在黑盒测试方法中,手工测试只是一种简单低效的测试方法,为了提高测试效率和质量,谷歌Google公司官方提供两种Android黑盒自动化测试的工具和接口分别为猴子monkey工具和猴子运行者monkeyrunner工具。1、Monkey工具是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。其原理为:向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。2、monkeyrunner工具包含了对系统操作接口的封装,如home键、音量键、开关机、电源键等按键的操作。通过monkeyrunner工具可实现基于坐标点对手机应用进行点击(touch)、滑动(drag)等操作。测试人员通过编写Python代码调用monkeyrunner工具提供的接口,完成对应用的重复性操作测试。monkeyrunner和monkey相比最大的优势就在于,monkeyrunner可以完成逻辑测试(或针对性测试)。测试人员可以通过编写测试代码针对应用程序的某一项功能逻辑进行测试和结果验证。可见,相对于monkey,monkeyrunner工具测试是一种定向的可预期的测试方法。
Monkey(中文译文为猴子)工具就像一只顽皮的小猴子,会对应用程序进行持续随机操作,操作类型和顺序对于测试人员来说是不可预期的,随机的。由于monkey的操作是不可以预期的,因此只有增加测试次数才能提高发现缺陷的概率,为了能使monkey尽可能多的发现软件的缺陷,通常是让monkey工具持续运行几个小时甚至是7*24小时方式持续运行。可见,monkey工具的第一个缺点就是发现缺陷的随机性,会导致缺陷遗漏。Monkey测试执行是通过发送模拟用户的事件流给终端设备,模拟的始终是用户的操作,因此monkey工具的第二个缺点为不能对软件的逻辑进行测试,既不能完成针对性测试。monkey工具的第三个缺点在于:测试人员在发现bug之后首先要做的定位分析bug的原因,monkey工具虽然可以提供执行过程的操作日志,但是随机性操作也给问题定位、复现带来了很大的麻烦,并不能提供有用的信息,即monkey工具不能对为软件缺陷的定位、复现提供有效的信息。
monkeyrunner工具在使用时,需要编写python代码调用monkeyrunner的接口完成各项测试任务,要求测试人员有代码编写的能力。但是,monkeyrunner除了调用系统按钮接口之外,其他的操作接口都是基于坐标的。例如,要实现点击屏幕上的一个按钮,代码是device.touch(346,750,"DOWN_AND_UP"),touch接口需要提供点击的X轴和Y轴坐标值。monkeyrunner基于坐标的机制带来两个问题,第一,当用户界面(UserInterface,简称UI)出现修改时,测试用例中原有的坐标数据都需要修改,导致用例代码的复用度降低,用例的维护成本增加。第二,不同手机的分辨率不同导致同一款应用安装后,相同按钮的坐标也会发生改变,导致测试脚本代码不能在不同分辨率的机型上通用,增加代码维护的成本。
综上所述,现有黑盒测试工具缺点如下:monkey因为操作的随机性,导致操作类型和顺序完全不可预期,而且复现和定位缺陷比较困难,不能对应用特定逻辑做针对性的自动化测试,测试覆盖不全面。monkeyrunner基于坐标的特性,导致测试代码不能兼容不同分辨率的设备测试,而且在应用UI界面变更频繁的情况下,用例代码需要大量修改,导致维护成本高、复用度低。
发明内容
本发明的实施例提供一种安卓应用稳定性测试的方法及装置,用于解决monkey工具复现和定位缺陷比较困难,不能对应用特定逻辑做针对性的自动化测试,测试覆盖不全面,以及monkeyrunner工具在应用UI界面变更频繁的情况下,用例代码需要大量修改,导致维护成本高、复用度低的问题。
一方面,本发明提供了一种安卓应用稳定性测试的方法,所述方法包括:
根据预设配置项确定测试类型,所述测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试;
如果所述测试类型为monkey测试,则根据monkey测试语句中的各测试参数对所述待测试数据进行monkey测试;
如果所述测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对所述待测试数据进行monkeyrunner测试。
另一方面,本发明还提供了一种安卓应用稳定性测试的装置,所述装置包括:
确定单元,用于根据预设配置项确定测试类型,所述测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试;
测试单元,用于如果所述确定单元确定的测试类型为monkey测试,则根据monkey测试语句中的各测试参数对所述待测试数据进行monkey测试;
所述解析单元还用于,如果所述确定单元确定的所述测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对所述待测试数据进行monkeyrunner测试。
本发明提供的安卓应用稳定性测试的方法及装置,能够根据预设配置项确定使用monkey测试或者monkeyrunner测试或者monkey测试和monkeyrunner测试相结合的测试。在对所述待测试数据进行monkey测试和monkeyrunner测试相结合的测试时,在不同的测试阶段分别执行monkey测试和monkeyrunner测试。现有技术中,采用monkey工具进行随机测试,采用monkeyrunner工具进行逻辑测试,但无法将monkey工具和monkeyrunner工具进行结合使用。因此存在monkey工具复现和定位缺陷比较困难,不能对应用特定逻辑做针对性的自动化测试,测试覆盖不全面,以及monkeyrunner工具在应用UI界面变更频繁的情况下,用例代码需要大量修改,导致维护成本高、复用度低的问题。本发明中,根据预设配置项能够从上述两种方法中选择一种进行测试时,根据预设配置项对待测试数据进行monkey测试或者monkeyrunner测试或者先monkey测试后monkeyrunner测试或者先monkeyrunner测试后monkey测试,使得测试人员能够根据测试需求同时使用两种测试工具进行测试,避免monkey测试的随机性导致的复现和定位缺陷比较困难,测试覆盖不全面的问题,同时由于能够结合monkey测试,使得monkeyrunner工具能够在UI界面变化较大时,通过monkey(随机测试)在UI界面中实现虚拟测试操作,无需对monkeyrunner的测试代码进行修改,进而降低维护成本、提高代码的复用度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中第一个安卓应用稳定性测试的方法的流程图;
图2为本发明实施例中第二个安卓应用稳定性测试的方法的流程图;
图3为本发明实施例中第三个安卓应用稳定性测试的方法的流程图;
图4为本发明实施例中第四个安卓应用稳定性测试的方法的流程图;
图5为本发明实施例中第五个安卓应用稳定性测试的方法的流程图;
图6为本发明实施例中第六个安卓应用稳定性测试的方法的流程图;
图7为本发明实施例中第七个安卓应用稳定性测试的方法的流程图;
图8为本发明实施例中第一个安卓应用稳定性测试的装置的结构示意图;
图9为本发明实施例中第二个安卓应用稳定性测试的装置的结构示意图;
图10为本发明实施例中第三个安卓应用稳定性测试的装置的结构示意图;
图11为本发明实施例中第四个安卓应用稳定性测试的装置的结构示意图;
图12为本发明实施例中第五个安卓应用稳定性测试的装置的结构示意图;
图13为本发明实施例中第六个安卓应用稳定性测试的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种安卓应用稳定性测试的方法,如图1所示,所述方法包括:
步骤101、根据预设配置项确定测试类型及待测试数据。
测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试。待测试数据为可运行的待测试软件的安装包(在安卓系统中安装包的格式为apk)。如果待测试数据为待测试软件的源代码,则先进行编译将该源代码编译为可执行的apk文件,再进行测试。
步骤102、如果测试类型为monkey测试,则根据monkey测试语句中的各测试参数对待测试数据进行monkey测试。
Monkey测试参数使用谷歌官方发布的开源参数。例如:adbshellmonkey参数能够启动一个apk应用。
进一步的,通过下述monkey测试参数进行monkey测试:
-v
命令行的每一个-v将增加反馈信息的级别。Level0(缺省值)除启动提示、测试完成和最终结果之外,提供较少信息。Level1提供较为详细的测试信息,如逐个发送到Activity的事件。Level2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity。
--throttle
在事件之间插入固定延迟。通过这个选项可以减缓Monkey的执行速度。如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被产成。
--pct-touch
调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某个单一位置)。
--pct-trackball
调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)。
--pct-nav
调整“基本”导航事件的百分比(导航事件由来自方向输入设备的up/down/left/right组成)。
--pct-majornav
调整“主要”导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)
--pct-syskeys
调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、StartCall、EndCall及音量控制键)。
--pct-appswitch
调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法。
--ignore-crashes
通常,当应用程序崩溃或发生任何失控异常时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成。
--ignore-timeouts
通常,当应用程序发生任何超时错误(如“ApplicationNotResponding”对话框)时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成。
具体的,创建子线程执行monkey工具,并在测试过程总记录下monkey的过工作日志以及安卓系统日志,以便进行纠错溯源。
步骤103、如果测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对待测试数据进行monkeyrunner测试。
monkeyrunner的测试语句为脚本语句。接收脚本语句,根据脚本语句进行monkeyrunner测试。脚本语句可以是预设的也可以是用户输入的。脚本语句的语法规则使用谷歌目前发布的开源语法。
配置项可以配置下述操作流程:首先通过monkey测试对应用某界面进行测试,当进入到预设界面时,使用monkeyrunner测试进行逻辑测试。
本发明提供的安卓应用稳定性测试的方法,能够根据预设配置项确定使用monkey测试或者monkeyrunner测试或者monkey测试和monkeyrunner测试相结合的测试。在对所述待测试数据进行monkey测试和monkeyrunner测试相结合的测试时,在不同的测试阶段分别执行monkey测试和monkeyrunner测试。现有技术中,采用monkey工具进行随机测试,采用monkeyrunner工具进行逻辑测试,但无法将monkey工具和monkeyrunner工具进行结合使用。因此存在monkey工具复现和定位缺陷比较困难,不能对应用特定逻辑做针对性的自动化测试,测试覆盖不全面,以及monkeyrunner工具在应用UI界面变更频繁的情况下,用例代码需要大量修改,导致维护成本高、复用度低的问题。本发明中,根据预设配置项能够从上述两种方法中选择一种进行测试时,根据预设配置项对待测试数据进行monkey测试或者monkeyrunner测试或者先monkey测试后monkeyrunner测试或者先monkeyrunner测试后monkey测试,使得测试人员能够根据测试需求同时使用两种测试工具进行测试,避免monkey测试的随机性导致的复现和定位缺陷比较困难,测试覆盖不全面的问题,同时由于能够结合monkey测试,使得monkeyrunner工具能够在UI界面变化较大时,通过monkey(随机测试)在UI界面中实现虚拟测试操作,无需对monkeyrunner的测试代码进行修改,进而降低维护成本、提高代码的复用度。
本发明实施例还提供了一种安卓应用稳定性测试的方法作为对图1所示方法的进一步说明,如图2所示,在步骤101、根据预设配置项确定测试类型及待测试数据之前,所述方法还包括:
步骤201、接收用户的输入指令。
其中,所述输入指令用于输入预设配置项以及所述与配置项对应的待测试数据。
步骤202、根据输入指令生成预设配置项。
为了兼容不同的项目特性和测试需求,为用户提供了下述四种配置项:
1、通用配置项。其包括待测试应用的SVN路径(待测试应用在版本控制软件(subversion,简称SVN)中的存储位置)、待测试应用的安装包的包名、任务标识(id)、测试设备序列号、是否开启网络切换功能、终端测试最大崩溃(crash)次数、monkey测试参数等。
2、日志配置项。为了快速发现应用的异常信息,本发明实施例中实时过滤日志信息。在对日志进行过滤时,将根据日志配置项对日志进行正则表达式过滤,以得到日志中的异常信息。
3、预设数据库配置项。预设数据库具有管理其所记录内容的功能,为了实现安全访问和数据读取,预设数据库设置有用户名及密码。预设数据库配置项包括,用户名(或用户id),测试人员和开发人员信息,测试版本和登录密码。
4、测试登录信息配置项。由于待测试应用中包含有需要登录的应用程序,测试登录信息配置项用于对待测试应用登录时使用的用户名及密码进行设置,以便测试时使用。
本发明实施例提供的安卓应用稳定性测试的方法,能够为用户提供多种设置接口,在进行测试之前能够对测试中使用的多个方面的参数进行设置,进而实现自动化测试。
本发明实施例还提供了一种安卓应用稳定性测试的方法,作为对图1所示方法的进一步描述,如图3所示,所述方法还包括:
步骤301、在对待测试数据进行monkey测试或进行monkeyrunner测试时,生成操作记录。
其中,操作记录包括测试结果、系统报错及对应的测试语句。如果是monkey测试,则该操作记录包括monkey日志,如果是monkeyrunner测试,则该操作记录包括monkeyrunner日志。系统报错包括:crash和ANR。其中,crash为崩溃,及系统因内存冲突等原因导致应用崩溃的错误。ANR(ApplicationNotResponding)中文全称为应用无响应。当应用程序在运行过程中出现crash错误或者ANR错误时,在操作记录中将会包含有响应的错误标识如crash或ANR。
步骤302、获取当期测试对应的屏幕画面。
屏幕画面以帧为单位,记录有相邻时间点的帧画面。相邻时间点之间的时间间隔如0.1秒、0.5秒等。
步骤303a、如果操作记录中含有预设标识,则将屏幕画面合成为视频文件。
预设标识包括:crash和ANR。当操作记录中含有crash和/或ANR时,将获取的屏幕画面合成为视频文件。
其中,视频文件的格式优选为SWF(shockwaveflash)。SWF为Flash的通用格式。可选的,将帧画面合成为GIF动画,以节省存储空间。
步骤303b、如果操作记录中未含有预设标识,则删除屏幕画面。
如果操作记录中未包含有预设标识则说明应用运行正常,无需进行问题追溯,进而删除屏幕画面。
本发明实施例提供的安卓应用稳定性测试的方法,能够对出现错误的运行画面进行合成及存储,便于在进行monkey测试后进行问题回溯。现有技术中,monkey工具仅能够进行随机测试,无法进行问题回溯。本发明实施例中,通过对运行画面进行获取并将获取的屏幕画面合成为视频文件,进而得到与问题代码对应的运行画面,便于测试人员进行问题回溯。
本发明实施例还提供了一种安卓应用稳定性测试的方法,作为对图3所述方法的进一步说明,如图4所示,在步骤301、对待测试数据进行monkey测试或进行monkeyrunner测试时,生成操作记录之后,所述方法还包括:
步骤400、对操作记录进行扫描,判断操作记录中是否存在预设标识。
如果待测试应用运行正常,则操作记录中不包含所述预设标识。如果待测试应用运行异常,则操作记录中包含所述预设标识。
步骤401、如果操作记录中含有预设标识,则根据预设配置项中的正则表达式对操作记录进行解析,得到与预设标志对应的错误标识。
正则表达式为用户预先在配置项中配置的内容。
步骤402、如果本地未保存含有预设标识的操作记录,则对含有预设标识的操作记录和错误标识进行保存。
本发明实施例提供的安卓应用稳定性测试的方法,能够将异常操作记录和错误标识在本地进行存储。在存储时,如果存在重复存储则取消存储,避免产生冗余数据,提高存储效率。
本发明实施例还提供了一种安卓应用稳定性测试的方法,作为对图4所述方法的进一步说明,如图5所示,在保证402、如果本地未保存含有所述预设标识的操作记录,则对所述含有所述预设标识的操作记录进行保存之后,所述方法还包括:
步骤501、获取预设数据库中与操作记录对应的缺陷单(bug单)信息,缺陷单信息中包含有缺陷单信息的对应操作记录的存储次数。
步骤502a、如果存储次数大于零,则将存储次数进行加一处理。
步骤503a、向预设数据库发送提单指令,提单指令用于改变预设数据库中保存的存储次数。
步骤502b、如果存储次数为零,则根据操作记录建立缺陷单。
步骤503b、在预设数据库中为建立的缺陷单分配存储空间,在存储空间中保存操作记录对应的缺陷单。
本发明实施例提供的安卓应用稳定性测试的方法能够在预设数据库中存储对应用程序异常时的缺陷单以及缺陷次数进行记录,方便测试人员在回溯应用程序缺陷是进行统计和分析。
本发明实施例还提供了一种安卓应用稳定性测试的方法,作为对图1至图5所示方法的进一步说明,当用户对monkey测试结果进行分析和查询时,如图6所示,所述方法还包括:
步骤601、接收用户触发的第一查看指令,第一查看指令用于查看monkey测试的运行结果。
步骤602、根据第一查看指令,将monkey测试发现的缺陷单和与缺陷单对应的预设配置项通过预设接口生成测试报告。
步骤603、输出生成的测试报告。
当用户对monkeyrunner测试结果进行分析和查询时,如图7所示,所述方法还包括:
步骤701、接收用户触发的第二查看指令,的人查看指令用于查看monkeyrunner测试的运行结果。
步骤702、根据第二查看指令,将monkeyrunner测试对应的执行数据进行输出。
本发明实施例提供的安卓应用稳定性测试的方法能够为用户提供应用测试结果的查询,以便测试人员根据测试结果进行二次(人工)分析。
进一步的,作为一种自动化的使用场景,本发明实施例通过配置选项为用户提供已配置好的测试选项方案,用户通过选择配置方案的名称即可自动生成配置项,进而通过接口完成自动化测试。上述配置方案包括:1)android应用资源监控工具,用于采集安卓应用程序使用过程中的CPU、内存等数据。2)FPS流畅度测试工具,用于测试安卓滑动过程中的流畅度;3)流量测试工具,用于监控应用程序流量消耗情况。
本发明具有较强的扩展性,可以在进行稳定性测试的同时执行其他测试功能,如android应用的资源消耗监控、FPS测试、流量监控等测试工具,更多的功能用户可以根据自己的实际需要进行添加和调整,无需额外进行配置。
进一步的,由于monkeyrunner测试时需要测试人员编写代码,因此为了降低编写代码的难度,本发明实施例还提供下述技术方案:
获取用户在操作界面中的操作,所述操作包括点击UI控件、滑动滚动条、单机、双击等操作。
根据所述操作,生成与所述操作对一个的编码语句。
通过将用户的操作转换为编码语句能够降低monkeyrunner测试的测试难度,进而扩大使用范围。
下面通过一个使用场景进行具体说明:
一、任务配置阶段,用户配置相关项目参数任务参数。配置完成后测试程序会根据配置的项目SVN地址,拉取程序的源代码后本地编译成APK安装包。
二、任务执行阶段,获取配置文件后,根据配置文件中的安装包下载地址,首先下载并安装最新编译的测试包。安装成功后,根据配置文件中的测试类型进行区分,判断当前任务是执行monkey随机测试还是monkeyrunner功能逻辑测试。
1)当需要执行monkey随机测试时,读取monkey测试参数,创建出子线程执行monkey测试命令。可选的,一台android设备上进行monkey测试。或者,通过多设备的并发执行。
2)如果执行的是monkeyrunner功能逻辑测试,用户可以自己手动编写python测试脚本,也可以进行脚本录制(将用户操作转换为编码)。功能逻辑测试是基于界面坐标的,对项目开发前期UI界面比较大的阶段,是不建议进行功能逻辑测试的。用户可以在项目稳定后,挑选核心功能进行针对性的功能逻辑测试,使用脚本录制模块可以方便快捷的完成测试脚本的编写
三、日志解析和缺陷提单阶段。在测试执行过程中,实时对monkey日志和android系统的logcat捕获的日志信息进行过滤。一旦发现crash、ANR等异常错误时,按照配置的正则表达式过滤异常相关的日志信息,然后检索已有的本地数据库,检查新发现的日志数据是否已经存储。如果新的异常信息会立即存储在数据库中;已经发现过的异常信息则不作保留。
发现新的缺陷之后,访问预设数据库,检查异常是否提单。如果当前发现的缺陷是已经提过的缺陷单,则调用预设数据库的更新单接口,更新已有缺陷单的异常信息。如果是第一次发现的缺陷,则调用预设数据库的新建单接口,创建一个全新的缺陷单。
当测试任务全部执行完成后,统计上报模块会上报monkey的随机性测试结果和monkeyrunner功能逻辑测试的数据,所有的测试数据信息都会通过用户查询的方式反馈给用户。
本发明实施例还提供了一种安卓应用稳定性测试的装置,如图8所示,所述装置8包括:
确定单元81,用于根据预设配置项确定测试类型及待测试数据,所述测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试;
测试单元82,用于如果所述确定单元81确定的测试类型为monkey测试,则根据monkey测试语句中的各测试参数对所述待测试数据进行monkey测试;
所述第一解析单元83还用于,如果所述确定单元81确定的所述测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对所述待测试数据进行monkeyrunner测试。
本发明提供的安卓应用稳定性测试的装置8,能够根据预设配置项确定使用monkey测试或者monkeyrunner测试或者monkey测试和monkeyrunner测试相结合的测试。在对所述待测试数据进行monkey测试和monkeyrunner测试相结合的测试时,在不同的测试阶段分别执行monkey测试和monkeyrunner测试。现有技术中,采用monkey工具进行随机测试,采用monkeyrunner工具进行逻辑测试,但无法将monkey工具和monkeyrunner工具进行结合使用。因此存在monkey工具复现和定位缺陷比较困难,不能对应用特定逻辑做针对性的自动化测试,测试覆盖不全面,以及monkeyrunner工具在应用UI界面变更频繁的情况下,用例代码需要大量修改,导致维护成本高、复用度低的问题。本发明中,根据预设配置项能够从上述两种装置8中选择一种进行测试时,根据预设配置项对待测试数据进行monkey测试或者monkeyrunner测试或者先monkey测试后monkeyrunner测试或者先monkeyrunner测试后monkey测试,使得测试人员能够根据测试需求同时使用两种测试工具进行测试,避免monkey测试的随机性导致的复现和定位缺陷比较困难,测试覆盖不全面的问题,同时由于能够结合monkey测试,使得monkeyrunner工具能够在UI界面变化较大时,通过monkey(随机测试)在UI界面中实现虚拟测试操作,无需对monkeyrunner的测试代码进行修改,进而降低维护成本、提高代码的复用度。
进一步的,如图9所示,所述装置8还包括:
接收单元91,用于接收用户的输入指令,所述输入指令用于输入预设配置项以及所述与配置项对应的待测试数据;
配置项生成单元92,用于根据所述接收单元91接收的所述输入指令生成预设配置项。
本发明实施例提供的安卓应用稳定性测试的装置8,能够为用户提供多种设置接口,在进行测试之前能够对测试中使用的多个方面的参数进行设置,进而实现自动化测试。
进一步的,如图10所示,所述装置8还包括:
操作记录生成单元1001,用于在所述测试单元82对所述待测试数据进行monkey测试或进行monkeynunner测试时,生成操作记录,所述操作记录包括所述测试单元82生成的测试结果、系统报错及对应的测试语句;
画面获取单元1002,用于获取当期测试对应的屏幕画面;
合成单元1003,用于当操作记录生成单元1001生成的所述操作记录中含有预设标识时,将所述画面获取单元1002获取的所述屏幕画面合成为视频文件。
本发明实施例提供的安卓应用稳定性测试的装置8,能够对出现错误的运行画面进行合成及存储,便于在进行monkey测试后进行问题回溯。现有技术中,monkey工具仅能够进行随机测试,无法进行问题回溯。本发明实施例中,通过对运行画面进行获取并将获取的屏幕画面合成为视频文件,进而得到与问题代码对应的运行画面,便于测试人员进行问题回溯。
进一步的,如图11所示,所述装置8还包括:
第二解析单元1101,用于当所述操作记录生成单元1001生成的所述操作记录中含有所述预设标识时,根据预设配置项中的正则表达式对所述操作记录进行解析,得到与所述预设标志对应的错误标识;
操作记录存储单元1102,用于当本地未保存含有所述第二解析单元1101得到的所述预设标识的操作记录,则对所述含有所述预设标识的操作记录和所述第二解析单元1101得到的错误标识进行保存。
本发明实施例提供的安卓应用稳定性测试的装置8,能够将异常操作记录和错误标识在本地进行存储。在存储时,如果存在重复存储则取消存储,避免产生冗余数据,提高存储效率。
进一步的,如图12所示,所述装置8还包括:
缺陷单信息获取单元1201,用于获取预设数据库中与所述操作记录对应的缺陷单信息,所述缺陷单信息中包含有所述缺陷单信息的对应操作记录的存储次数;
计数单元1202,用于当所述缺陷单信息获取单元1201获取的所述存储次数大于零时,将所述存储次数进行加一处理;
发送单元1203,用于向所述预设数据库发送提单指令,所述提单指令用于改变所述预设数据库中保存的所述存储次数;
创建单元1204,用于当所述缺陷单信息获取单元1201获取的所述存储次数为零时,根据所述操作记录建立缺陷单;
缺陷单存储单元1205,用于在所述预设数据库中为建立的缺陷单分配存储空间,在所述存储空间中保存所述操作记录对应的缺陷单。
本发明实施例提供的安卓应用稳定性测试的装置8能够在预设数据库中存储对应用程序异常时的缺陷单以及缺陷次数进行记录,方便测试人员在回溯应用程序缺陷是进行统计和分析。
进一步的,如图13所示,所述装置8还包括:
第一指令接收单元1301,用于接收用户触发的第一查看指令,所述第一查看指令用于查看monkey测试的运行结果;
报告生成单元1302,用于根据所述第一指令接收单元1301接收的所述第一查看指令,将monkey测试发现的缺陷单和与所述缺陷单对应的预设配置项通过预设接口生成测试报告;
报告输出单元1303,用于输出所述报告生成单元1302生成的所述测试报告;
或者,
第二指令接收单元1304,用于接收用户触发的第二查看指令,所述的人查看指令用于查看monkeyrunner测试的运行结果;
数据输出单元,用于根据第二指令接收单元1304接收的所述第二查看指令,将monkeyrunner测试对应的执行数据进行输出。
本发明实施例提供的安卓应用稳定性测试的装置8能够为用户提供应用测试结果的查询,以便测试人员根据测试结果进行二次(人工)分析。
需要说明的是,本发明在进行实现时使用python语言进行编写和开发,整个系统全部由python源文件代码组成,不需要进行安装。作为一个应用举例,运行环境为python2.7及以上版本的系统开发库。目前本发明已经在window、Linux、MacOS等系统环境下正常运行,对运行平台没有特别要求,也不需要特别配置。
本发明在实现时可采用单机运行模式,也可以采用持续集成模式运行。在单机运行模式下,用户需要手动启动测试系统。如果采用接入持续集成平台上,需要对AndroidMonkey系统进行少量配置调整。接入持续集成平台需要提供测试项目源代码的SVN地址,项目相关配置信息,开发者邮箱(用以接受测试结果邮件),具体的配置项可以根据接入的系统不同进行调整。为了方便对测试数据结果的统计和分析,AndroidMonkey数据上报逻辑需要调整,增加上报数据到持续集成平台的逻辑,方便用户直接在持续集成系统是查看数据信息。上述提及的持续集成系统是一个为测试人员提供集成各种测试工具并调度测试工具对产品进行测试和监控、收集并管理测试数据、输出统计度量报告、指导和推进研发管理过程等功能的操作平台。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种安卓应用稳定性测试的方法,其特征在于,所述方法包括:
根据预设配置项确定测试类型及待测试数据,所述测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试;
如果所述测试类型为monkey测试,则根据monkey测试语句中的各测试参数对所述待测试数据进行monkey测试;
如果所述测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对所述待测试数据进行monkeyrunner测试。
2.根据权利要求1所述的安卓应用稳定性测试的方法,其特征在于,在所述根据预设配置项确定测试类型及待测试数据的步骤之前,所述方法还包括:
接收用户的输入指令,所述输入指令用于输入预设配置项以及所述与配置项对应的待测试数据;
根据所述输入指令生成预设配置项。
3.根据权利要求1所述的安卓应用稳定性测试的方法,其特征在于,所述方法还包括:
在对所述待测试数据进行monkey测试或进行monkeyrunner测试时,生成操作记录,所述操作记录包括测试结果、系统报错及对应的测试语句;
获取当期测试对应的屏幕画面;
如果所述操作记录中含有预设标识,则将所述屏幕画面合成为视频文件。
4.根据权利要求3所述的安卓应用稳定性测试的方法,其特征在于,在对所述待测试数据进行monkey测试或进行monkeyrunner测试时,生成操作记录的步骤之后,所述方法还包括:
如果所述操作记录中含有所述预设标识,则根据预设配置项中的正则表达式对所述操作记录进行解析,得到与所述预设标志对应的错误标识;
如果本地未保存含有所述预设标识的操作记录,则对所述含有所述预设标识的操作记录和所述错误标识进行保存。
5.根据权利要求4所述的安卓应用稳定性测试的方法,其特征在于,在所述如果本地未保存含有所述预设标识的操作记录,则对所述含有所述预设标识的操作记录进行保存的步骤之后,所述方法还包括:
获取预设数据库中与所述操作记录对应的缺陷单信息,所述缺陷单信息中包含有所述缺陷单信息的对应操作记录的存储次数;
如果所述存储次数大于零,则将所述存储次数进行加一处理;
向所述预设数据库发送提单指令,所述提单指令用于改变所述预设数据库中保存的所述存储次数;
如果所述存储次数为零,则根据所述操作记录建立缺陷单;
在所述预设数据库中为建立的缺陷单分配存储空间,在所述存储空间中保存所述操作记录对应的缺陷单。
6.根据权利要求1至5中任一项所述的安卓应用稳定性测试的方法,其特征在于,所述方法还包括:
接收用户触发的第一查看指令,所述第一查看指令用于查看monkey测试的运行结果;
根据所述第一查看指令,将monkey测试发现的缺陷单和与所述缺陷单对应的预设配置项通过预设接口生成测试报告;
输出生成的所述测试报告;
或者,
接收用户触发的第二查看指令,所述的人查看指令用于查看monkeyrunner测试的运行结果;
根据所述第二查看指令,将monkeyrunner测试对应的执行数据进行输出。
7.一种安卓应用稳定性测试的装置,其特征在于,所述装置包括:
确定单元,用于根据预设配置项确定测试类型及待测试数据,所述测试类型包括猴子monkey测试和/或猴子操作者monkeyrunner测试;
测试单元,用于如果所述确定单元确定的测试类型为monkey测试,则根据monkey测试语句中的各测试参数对所述待测试数据进行monkey测试;
所述解析单元还用于,如果所述确定单元确定的所述测试类型为monkeyrunner测试,则根据每个monkeyrunner测试语句中的各脚本语句对所述待测试数据进行monkeyrunner测试。
8.根据权利要求7所述的安卓应用稳定性测试的装置,其特征在于,所述装置还包括:
接收单元,用于接收用户的输入指令,所述输入指令用于输入预设配置项以及所述与配置项对应的待测试数据;
配置项生成单元,用于根据所述接收单元接收的所述输入指令生成预设配置项。
9.根据权利要求7所述的安卓应用稳定性测试的装置,其特征在于,所述装置还包括:
操作记录生成单元,用于在所述测试单元对所述待测试数据进行monkey测试或进行monkeyrunner测试时,生成操作记录,所述操作记录包括所述测试单元生成的测试结果、系统报错及对应的测试语句;
画面获取单元,用于获取当期测试对应的屏幕画面;
合成单元,用于当操作记录生成单元生成的所述操作记录中含有预设标识时,将所述画面获取单元获取的所述屏幕画面合成为视频文件。
10.根据权利要求9所述的安卓应用稳定性测试的装置,其特征在于,所述装置还包括:
解析单元,用于当所述操作记录生成单元生成的所述操作记录中含有所述预设标识时,根据预设配置项中的正则表达式对所述操作记录进行解析,得到与所述预设标志对应的错误标识;
操作记录存储单元,用于当本地未保存含有所述解析单元得到的所述预设标识的操作记录,则对所述含有所述预设标识的操作记录和所述解析单元得到的错误标识进行保存。
11.根据权利要求10所述的安卓应用稳定性测试的装置,其特征在于,所述装置还包括:
缺陷单信息获取单元,用于获取预设数据库中与所述操作记录对应的缺陷单信息,所述缺陷单信息中包含有所述缺陷单信息的对应操作记录的存储次数;
计数单元,用于当所述缺陷单信息获取单元获取的所述存储次数大于零时,将所述存储次数进行加一处理;
发送单元,用于向所述预设数据库发送提单指令,所述提单指令用于改变所述预设数据库中保存的所述存储次数;
创建单元,用于当所述缺陷单信息获取单元获取的所述存储次数为零时,根据所述操作记录建立缺陷单;
缺陷单存储单元,用于在所述预设数据库中为建立的缺陷单分配存储空间,在所述存储空间中保存所述操作记录对应的缺陷单。
12.根据权利要求7至11任一项所述的安卓应用稳定性测试的装置,其特征在于,所述装置还包括:
第一指令接收单元,用于接收用户触发的第一查看指令,所述第一查看指令用于查看monkey测试的运行结果;
报告生成单元,用于根据所述第一指令接收单元接收的所述第一查看指令,将monkey测试发现的缺陷单和与所述缺陷单对应的预设配置项通过预设接口生成测试报告;
报告输出单元,用于输出所述报告生成单元生成的所述测试报告;
或者,
第二指令接收单元,用于接收用户触发的第二查看指令,所述的人查看指令用于查看monkeyrunner测试的运行结果;
数据输出单元,用于根据第二指令接收单元接收的所述第二查看指令,将monkeyrunner测试对应的执行数据进行输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410211591.7A CN105094783B (zh) | 2014-05-19 | 2014-05-19 | 安卓应用稳定性测试的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410211591.7A CN105094783B (zh) | 2014-05-19 | 2014-05-19 | 安卓应用稳定性测试的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105094783A true CN105094783A (zh) | 2015-11-25 |
CN105094783B CN105094783B (zh) | 2019-12-13 |
Family
ID=54575321
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410211591.7A Active CN105094783B (zh) | 2014-05-19 | 2014-05-19 | 安卓应用稳定性测试的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105094783B (zh) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105608010A (zh) * | 2016-01-26 | 2016-05-25 | 杭州德澜科技有限公司 | 一种家电app自动化稳定性测试设备 |
CN105653452A (zh) * | 2015-12-30 | 2016-06-08 | 北京金山安全软件有限公司 | 一种测试应用程序的方法及装置 |
CN106095682A (zh) * | 2016-06-15 | 2016-11-09 | 浪潮软件集团有限公司 | 一种模拟复杂网络的安卓应用稳定性测试方法 |
CN106970817A (zh) * | 2017-03-24 | 2017-07-21 | 北京小米移动软件有限公司 | 故障确定方法及装置 |
CN107168878A (zh) * | 2017-05-22 | 2017-09-15 | 网易有道信息技术(北京)有限公司 | 一种对应用程序进行测试的方法、装置和介质 |
CN107678940A (zh) * | 2017-08-30 | 2018-02-09 | 苏州朗动网络科技有限公司 | 基于安卓app的自动化探索测试方法及系统 |
CN107977306A (zh) * | 2016-10-25 | 2018-05-01 | 百度在线网络技术(北京)有限公司 | 用于测试安卓应用稳定性的方法和装置 |
CN108153672A (zh) * | 2017-12-25 | 2018-06-12 | 苏州蜗牛数字科技股份有限公司 | 一种移动应用的自动化测试系统及测试方法 |
CN108241580A (zh) * | 2016-12-30 | 2018-07-03 | 深圳壹账通智能科技有限公司 | 客户端程序的测试方法及终端 |
CN108536578A (zh) * | 2017-03-06 | 2018-09-14 | 阿里巴巴集团控股有限公司 | 一种测试方法及装置 |
CN106055482B (zh) * | 2016-06-03 | 2018-10-26 | 中国科学院软件研究所 | 一种安卓应用程序稳定性验证PoC自动生成方法和装置 |
CN108829577A (zh) * | 2018-04-26 | 2018-11-16 | 四川斐讯信息技术有限公司 | 一种应用程序性能的自动化测试方法 |
CN108874668A (zh) * | 2018-06-04 | 2018-11-23 | 北京潘达互娱科技有限公司 | 一种应用测试方法及装置 |
CN109634872A (zh) * | 2019-02-25 | 2019-04-16 | 北京达佳互联信息技术有限公司 | 应用测试方法、装置、终端及存储介质 |
WO2019071451A1 (zh) * | 2017-10-11 | 2019-04-18 | 深圳传音通讯有限公司 | 一种测试方法、终端及计算机存储介质 |
CN109828910A (zh) * | 2018-12-26 | 2019-05-31 | 平安科技(深圳)有限公司 | monkey测试的方法及装置、计算机设备、存储介质 |
CN110162687A (zh) * | 2019-05-06 | 2019-08-23 | 海马云(天津)信息技术有限公司 | 一种安卓应用中的数据抓取方法及系统 |
CN110321271A (zh) * | 2019-06-03 | 2019-10-11 | 平安科技(深圳)有限公司 | 基于Monkey获取异常信息的方法、装置、设备及存储介质 |
CN111159028A (zh) * | 2019-12-23 | 2020-05-15 | 望海康信(北京)科技股份公司 | 网页测试方法及装置 |
CN111367816A (zh) * | 2020-03-25 | 2020-07-03 | 上海复深蓝软件股份有限公司 | 移动测试方法、装置、计算机设备及存储介质 |
CN111506492A (zh) * | 2019-01-31 | 2020-08-07 | 百度在线网络技术(北京)有限公司 | 一种应用程序的测试方法及装置、设备、存储介质 |
CN111651359A (zh) * | 2020-06-08 | 2020-09-11 | 北京首汽智行科技有限公司 | 一种app稳定性测试方法 |
CN112100085A (zh) * | 2020-11-17 | 2020-12-18 | 深圳市房多多网络科技有限公司 | 安卓应用程序稳定性测试方法、装置和设备 |
CN112579438A (zh) * | 2020-12-01 | 2021-03-30 | 河南芯盾网安科技发展有限公司 | 多功能自动化测试工具及测试方法 |
CN112650670A (zh) * | 2020-12-17 | 2021-04-13 | 京东数科海益信息科技有限公司 | 应用测试方法、装置、系统、电子设备和存储介质 |
CN113434417A (zh) * | 2021-06-29 | 2021-09-24 | 青岛海尔科技有限公司 | 漏洞的回归测试方法及装置、存储介质、电子装置 |
CN114090414A (zh) * | 2020-08-24 | 2022-02-25 | 阿里巴巴集团控股有限公司 | 数据处理系统及方法、数据测试系统、数据系统 |
CN114201392A (zh) * | 2021-12-06 | 2022-03-18 | 麒麟软件有限公司 | 一种安卓环境及安卓应用稳定性测试方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102938800A (zh) * | 2012-11-07 | 2013-02-20 | 大唐移动通信设备有限公司 | 一种无线通信质量自动测试系统以及方法 |
CN103049371A (zh) * | 2012-11-07 | 2013-04-17 | 青岛海信传媒网络技术有限公司 | Android应用程序测试方法和测试装置 |
CN103823754A (zh) * | 2014-02-11 | 2014-05-28 | 深圳市同洲电子股份有限公司 | 一种实现自动测试的方法及装置 |
-
2014
- 2014-05-19 CN CN201410211591.7A patent/CN105094783B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102938800A (zh) * | 2012-11-07 | 2013-02-20 | 大唐移动通信设备有限公司 | 一种无线通信质量自动测试系统以及方法 |
CN103049371A (zh) * | 2012-11-07 | 2013-04-17 | 青岛海信传媒网络技术有限公司 | Android应用程序测试方法和测试装置 |
CN103823754A (zh) * | 2014-02-11 | 2014-05-28 | 深圳市同洲电子股份有限公司 | 一种实现自动测试的方法及装置 |
Non-Patent Citations (1)
Title |
---|
佚名: "Android测试工具monkey&monkeyrunner使用方法", 《2CTO》 * |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105653452A (zh) * | 2015-12-30 | 2016-06-08 | 北京金山安全软件有限公司 | 一种测试应用程序的方法及装置 |
CN105608010A (zh) * | 2016-01-26 | 2016-05-25 | 杭州德澜科技有限公司 | 一种家电app自动化稳定性测试设备 |
CN106055482B (zh) * | 2016-06-03 | 2018-10-26 | 中国科学院软件研究所 | 一种安卓应用程序稳定性验证PoC自动生成方法和装置 |
CN106095682A (zh) * | 2016-06-15 | 2016-11-09 | 浪潮软件集团有限公司 | 一种模拟复杂网络的安卓应用稳定性测试方法 |
CN107977306A (zh) * | 2016-10-25 | 2018-05-01 | 百度在线网络技术(北京)有限公司 | 用于测试安卓应用稳定性的方法和装置 |
CN108241580A (zh) * | 2016-12-30 | 2018-07-03 | 深圳壹账通智能科技有限公司 | 客户端程序的测试方法及终端 |
CN108536578A (zh) * | 2017-03-06 | 2018-09-14 | 阿里巴巴集团控股有限公司 | 一种测试方法及装置 |
CN106970817A (zh) * | 2017-03-24 | 2017-07-21 | 北京小米移动软件有限公司 | 故障确定方法及装置 |
CN107168878A (zh) * | 2017-05-22 | 2017-09-15 | 网易有道信息技术(北京)有限公司 | 一种对应用程序进行测试的方法、装置和介质 |
CN107168878B (zh) * | 2017-05-22 | 2020-06-09 | 网易有道信息技术(北京)有限公司 | 一种对应用程序进行测试的方法、装置和介质 |
CN107678940A (zh) * | 2017-08-30 | 2018-02-09 | 苏州朗动网络科技有限公司 | 基于安卓app的自动化探索测试方法及系统 |
WO2019071451A1 (zh) * | 2017-10-11 | 2019-04-18 | 深圳传音通讯有限公司 | 一种测试方法、终端及计算机存储介质 |
CN108153672A (zh) * | 2017-12-25 | 2018-06-12 | 苏州蜗牛数字科技股份有限公司 | 一种移动应用的自动化测试系统及测试方法 |
CN108829577A (zh) * | 2018-04-26 | 2018-11-16 | 四川斐讯信息技术有限公司 | 一种应用程序性能的自动化测试方法 |
CN108874668A (zh) * | 2018-06-04 | 2018-11-23 | 北京潘达互娱科技有限公司 | 一种应用测试方法及装置 |
CN109828910A (zh) * | 2018-12-26 | 2019-05-31 | 平安科技(深圳)有限公司 | monkey测试的方法及装置、计算机设备、存储介质 |
CN111506492A (zh) * | 2019-01-31 | 2020-08-07 | 百度在线网络技术(北京)有限公司 | 一种应用程序的测试方法及装置、设备、存储介质 |
CN109634872A (zh) * | 2019-02-25 | 2019-04-16 | 北京达佳互联信息技术有限公司 | 应用测试方法、装置、终端及存储介质 |
CN109634872B (zh) * | 2019-02-25 | 2023-03-10 | 北京达佳互联信息技术有限公司 | 应用测试方法、装置、终端及存储介质 |
CN110162687A (zh) * | 2019-05-06 | 2019-08-23 | 海马云(天津)信息技术有限公司 | 一种安卓应用中的数据抓取方法及系统 |
CN110321271A (zh) * | 2019-06-03 | 2019-10-11 | 平安科技(深圳)有限公司 | 基于Monkey获取异常信息的方法、装置、设备及存储介质 |
CN111159028A (zh) * | 2019-12-23 | 2020-05-15 | 望海康信(北京)科技股份公司 | 网页测试方法及装置 |
CN111159028B (zh) * | 2019-12-23 | 2023-08-01 | 望海康信(北京)科技股份公司 | 网页测试方法及装置 |
CN111367816A (zh) * | 2020-03-25 | 2020-07-03 | 上海复深蓝软件股份有限公司 | 移动测试方法、装置、计算机设备及存储介质 |
CN111651359A (zh) * | 2020-06-08 | 2020-09-11 | 北京首汽智行科技有限公司 | 一种app稳定性测试方法 |
CN114090414A (zh) * | 2020-08-24 | 2022-02-25 | 阿里巴巴集团控股有限公司 | 数据处理系统及方法、数据测试系统、数据系统 |
CN112100085A (zh) * | 2020-11-17 | 2020-12-18 | 深圳市房多多网络科技有限公司 | 安卓应用程序稳定性测试方法、装置和设备 |
CN112100085B (zh) * | 2020-11-17 | 2021-03-16 | 深圳市房多多网络科技有限公司 | 安卓应用程序稳定性测试方法、装置和设备 |
CN112579438B (zh) * | 2020-12-01 | 2022-07-08 | 河南芯盾网安科技发展有限公司 | 多功能自动化测试工具及测试方法 |
CN112579438A (zh) * | 2020-12-01 | 2021-03-30 | 河南芯盾网安科技发展有限公司 | 多功能自动化测试工具及测试方法 |
CN112650670A (zh) * | 2020-12-17 | 2021-04-13 | 京东数科海益信息科技有限公司 | 应用测试方法、装置、系统、电子设备和存储介质 |
CN113434417B (zh) * | 2021-06-29 | 2023-06-16 | 青岛海尔科技有限公司 | 漏洞的回归测试方法及装置、存储介质、电子装置 |
CN113434417A (zh) * | 2021-06-29 | 2021-09-24 | 青岛海尔科技有限公司 | 漏洞的回归测试方法及装置、存储介质、电子装置 |
CN114201392A (zh) * | 2021-12-06 | 2022-03-18 | 麒麟软件有限公司 | 一种安卓环境及安卓应用稳定性测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105094783B (zh) | 2019-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105094783B (zh) | 安卓应用稳定性测试的方法及装置 | |
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
CN107908541B (zh) | 接口测试方法、装置、计算机设备及存储介质 | |
CN103365770B (zh) | 移动终端软件测试系统及软件测试方法 | |
US8276126B2 (en) | Determining causes of software regressions based on regression and delta information | |
CN109840206B (zh) | 数据测试方法、装置、终端及存储介质 | |
US7398469B2 (en) | Automated test system for testing an application running in a windows-based environment and related methods | |
CN101930400B (zh) | Sdk自动化测试系统及方法 | |
CN108073400A (zh) | 软件自动化构建方法、服务器及存储介质 | |
CN111124919A (zh) | 一种用户界面的测试方法、装置、设备及存储介质 | |
US7512933B1 (en) | Method and system for associating logs and traces to test cases | |
KR20120121950A (ko) | 애플리케이션 그래픽 유저인터페이스 테스트 자동화 시스템 및 그 방법 | |
CN110716853A (zh) | 一种测试脚本录制方法、应用程序测试方法和相关装置 | |
CN107656872B (zh) | 软件测试方法、装置、设备和计算机存储介质 | |
CN107015841B (zh) | 一种程序编译的预处理方法及程序编译设备 | |
CN105653946A (zh) | 基于组合事件行为触发的Android恶意行为检测系统及其检测方法 | |
CN113568839A (zh) | 软件测试和统计测试覆盖率的方法、装置、设备及介质 | |
CN110928777B (zh) | 测试用例的处理方法、装置、设备及存储介质 | |
CN111026670B (zh) | 测试用例的生成方法、测试用例的生成装置及存储介质 | |
CN111475390A (zh) | 日志采集系统部署方法、装置、设备及存储介质 | |
CN112559348B (zh) | 基于jacoco的测试分析方法、系统、设备以及介质 | |
CN115658529A (zh) | 用户页面的自动化测试方法以及相关设备 | |
CN112231206A (zh) | 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台 | |
CN105760300B (zh) | 一种stk/utk业务的自动化测试方法及测试系统 | |
CN115658038A (zh) | 基于Jenkins的devops系统、方法及相关设备 |
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 |