移动应用程序测试方法和装置与流程

文档序号:12120561阅读:271来源:国知局
移动应用程序测试方法和装置与流程

本发明涉及测试技术领域,特别是涉及一种移动应用程序测试方法和装置。



背景技术:

程序测试(Program Testing)是程序的生命周期中重要的环节,是发现程序错误和缺陷的主要手段。程序测试具体是指对一个完成了全部或部分功能、模块的计算机程序在正式使用前的检测,以确保该程序能按预定的方式正确地运行。移动应用程序是适用于移动终端的应用程序,如适用于安卓(Android)操作系统的安卓移动应用程序,或者适用于iOS(苹果移动终端操作系统)的iOS移动应用程序。

目前测试移动应用程序,需要在计算机中完成开发编译成移动应用程序后,从计算机中导出到移动终端中进行测试。然而,目前将移动应用程序从计算机导出到移动终端进行测试的方式,操作繁琐,降低了移动应用程序测试效率。



技术实现要素:

基于此,有必要针对目前将移动应用程序从计算机导出到移动终端进行测试的方式降低了移动应用程序测试效率的问题,提供一种移动应用程序测试方法和装置。

一种移动应用程序测试方法,包括:

接收第一终端发送的被测代码;

将所述被测代码编译为移动应用程序;

记录用于下载所述移动应用程序的下载地址;

生成用于获取所述下载地址的条码;

将所述条码返回至所述第一终端进行显示,使得第二终端采集所述条码并据以获取所述下载地址,以及根据所述下载地址下载所述移动应用程序并测试。

一种移动应用程序测试装置,包括:

被测代码接收模块,用于接收第一终端发送的被测代码;

编译模块,用于将所述被测代码编译为移动应用程序;

记录模块,用于记录用于下载所述移动应用程序的下载地址;

条码生成模块,用于生成用于获取所述下载地址的条码;

条码处理模块,用于将所述条码返回至所述第一终端进行显示,使得第二终端采集所述条码并据以获取所述下载地址,以及根据所述下载地址下载所述移动应用程序并测试。

上述移动应用程序测试方法和装置,当第一终端上的被测代码具有测试需求时,接收第一终端发送的被测代码,将被测代码编译为移动应用程序,记录该移动应用程序的下载地址,并生成用于获取该下载地址的条码发送至第一终端。用于测试移动应用程序的第二终端就可以采集第一终端显示的条码,并根据该条码获得下载地址,进而下载该移动应用程序并进行测试。对于第二终端的用户来说,仅需要通过第二终端采集条码就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。而且,由于第一终端并不直接编译,可避免第一终端在编译时在移动应用程序中加入恶意代码。

一种移动应用程序测试方法,包括:

获取测试指令;

根据所述测试指令向服务器发送被测代码,使得所述服务器将所述被测代码编译为移动应用程序,并记录用于下载所述移动应用程序的下载地址;

接收所述服务器反馈的用于获取所述下载地址的条码;

显示所述条码,使得移动终端采集所述条码并据以获取所述下载地址,以及根据所述下载地址下载所述移动应用程序并测试。

一种移动应用程序测试装置,包括:

测试触发模块,用于获取测试指令;根据所述测试指令向服务器发送被测代码,使得所述服务器将所述被测代码编译为移动应用程序,并记录用于下载所述移动应用程序的下载地址;

条码接收模块,用于接收所述服务器反馈的用于获取所述下载地址的条码;

条码显示模块,用于显示所述条码,使得移动终端采集所述条码并据以获取所述下载地址,以及根据所述下载地址下载所述移动应用程序并测试。

上述移动应用程序测试方法和装置,触发测试后,将被测代码发送至服务器,由将被测代码编译为移动应用程序,记录该移动应用程序的下载地址。接收服务器生成的条码并显示,用于测试移动应用程序的移动终端就可以采集显示的条码,并根据该条码获得下载地址,进而下载该移动应用程序并进行测试。对于移动终端的用户来说,仅需要通过移动终端采集条码就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。而且,由于第一终端并不直接编译,可避免第一终端在编译时在移动应用程序中加入恶意代码。

一种移动应用程序测试方法,包括:

采集条码;

根据所述条码获取用于下载移动应用程序的下载地址;

根据所述下载地址下载所述移动应用程序;

运行所述移动应用程序;

获取针对所述移动应用程序的测试指令,由所述移动应用程序对所述测试指令进行响应。

一种移动应用程序测试装置,包括:

条码采集模块,用于采集条码;

条码处理模块,用于根据所述条码获取用于下载移动应用程序的下载地址;

下载模块,用于根据所述下载地址下载所述移动应用程序;

测试模块,用于运行所述移动应用程序;获取针对所述移动应用程序的测试指令,由所述移动应用程序对所述测试指令进行响应。

上述移动应用程序测试方法和装置,通过采集条码就可以下载移动应用程序,运行该移动应用程序,获取针对该移动应用程序的测试指令,由该移动应用程序对该测试指令进行响应,从而完成对移动应用程序的测试。对于用户,仅需要通过操作触发条码的采集就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。

附图说明

图1为一个实施例中移动应用程序测试方法的应用环境图;

图2为一个实施例中服务器的结构框图;

图3A为一个实施例中第一终端的内部结构示意图;

图3B为一个实施例中第二终端的内部结构示意图;

图4为一个实施例中移动应用程序测试方法的流程示意图;

图5为另一个实施例中移动应用程序测试方法的流程示意图;

图6为又一个实施例中移动应用程序测试方法的流程示意图;

图7为一个实施例中根据条码获取用于下载移动应用程序的下载地址的步骤的流程示意图;

图8为一个实施例中在移动应用程序的测试有效期失效时删除已下载的移动应用程序的步骤的流程示意图;

图9为再一个实施例中移动应用程序测试方法的流程示意图;

图10为一个实施例中移动应用程序测试装置的结构框图;

图11为一个实施例中图10中的条码处理模块的结构框图;

图12为另一个实施例中移动应用程序测试装置的结构框图;

图13为再一个实施例中移动应用程序测试装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一终端称为第二终端,且类似地,可将第二终端称为第一终端。第一终端和第二终端两者都是终端,但其不是同一终端。

图1为一个实施例中移动应用程序测试方法的应用环境图。参照图1,该移动应用程序测试方法应用于移动应用程序测试系统中。该移动应用程序测试系统包括第一终端110、服务器120和第二终端130,且第二终端130为移动终端。其中,第一终端110用于编辑移动应用程序的代码,实现移动应用程序的开发;第一终端110还用于检测测试指令,根据该测试指令向服务器120发送测试代码。服务器120可用于接收第一终端110发送的被测代码,将被测代码编译为移动应用程序,记录用于下载移动应用程序的下载地址,生成用于获取下载地址的条码,将条码返回至第一终端110。第一终端110可用于接收服务器返回的条码,并显示该条码。第二终端130可用于采集条码,根据条码获取用于下载移动应用程序的下载地址,根据下载地址下载移动应用程序,运行移动应用程序,获取针对移动应用程序的测试指令,由移动应用程序对测试指令进行响应。

图2为一个实施例中服务器的结构框图。参照图2,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,服务器的非易失性存储介质存储有操作系统,还存储有一种移动应用程序测试装置,该移动应用程序测试装置用于实现一种适用于服务器的移动应用程序测试方法。该服务器的处理器用于提供计算可控制能力,支撑整个服务器的运行,处理器具体可用于将被测代码编译为移动应用程序、在非易失性存储介质和/或内存储器中记录用于下载移动应用程序的下载地址、生成用于获取下载地址的条码等。服务器中的内存储器为非易失性存储介质中的移动应用程序测试装置的运行提供环境,该内存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种移动应用程序测试方法。服务器的网络接口用于与外部进行网络通信,如接收测试代码或者返回条码等。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图3A为一个实施例中第一终端的内部结构示意图。如图3A所示,该第一终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,第一终端的非易失性存储介质存储有操作系统,还存储有一种移动应用程序测试装置,该移动应用程序测试装置用于实现一种移动应用程序测试方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。第一终端中的内存储器为非易失性存储介质中的移动应用程序测试装置的运行提供环境,该内存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种移动应用程序测试方法。网络接口用于与服务器进行网络通信,如从服务器下载移动应用程序。第一终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该第一终端可以是个人计算机或者其它可用于开发移动应用程序的设备。本领域技术人员可以理解,图3A中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图3B为一个实施例中第二终端的内部结构示意图。如图3B所示,该第二终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏、输入装置和摄像头。其中,第二终端的非易失性存储介质存储有操作系统,还存储有一种移动应用程序测试装置,该移动应用程序测试装置用于实现一种适用于移动终端的移动应用程序测试方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。第二终端中的内存储器为非易失性存储介质中的移动应用程序测试装置的运行提供环境,该内存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种移动应用程序测试方法。网络接口用于与服务器进行网络通信,如从服务器下载移动应用程序。第二终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。摄像头可用于采集条码。该第二终端可以是手机、平板电脑、个人数字助理或穿戴式设备等。本领域技术人员可以理解,图3B中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图4为一个实施例中移动应用程序测试方法的流程示意图。本实施例主要以该方法应用于上述图1中的服务器120进行举例说明。参照图4,该方法具体包括如下步骤:

S402,接收第一终端发送的被测代码。

其中,第一终端可以是个人计算机,可运行视窗(Windows)操作系统、Linux操作系统或者Mac OS(苹果桌面操作系统)。第一终端的操作系统上运行开发程序,该开发程序是指用于开发移动应用程序的程序,主要用于编辑移动应用程序的代码,还可以用于模拟移动应用程序的运行环境或者发布移动应用程序等。被测代码是需要进行测试的移动应用程序的代码,一般是通过高级计算机语言编写。

在一个实施例中,步骤S402包括:接收第一终端通过第一终端上运行的开发程序编辑被测代码后发送的被测代码。具体地,第一终端可通过其上运行的开发程序生成开发项目,在该开发项目中编辑开发移动应用程序所需的各种代码。开发程序可提供测试触发控件,第一终端通过开发程序检测对该测试触发控件的操作,当检测到对该测试触发控件的操作时触发测试指令。第一终端进而根据该测试指令将开发项目中开发移动应用程序所需的所有代码作为测试代码上传至服务器,由服务器接收。

S404,将被测代码编译为移动应用程序。

其中,编译是指将高级计算机语言转换成可被执行的目标代码的过程,编译器则是将高级计算机语言转换成可被执行的目标代码的程序。服务器上可运行编译器,服务器通过该编译器对被测代码进行编译得到移动应用程序。可以理解的是,移动应用程序也可由第一终端上的开发程序将被测代码进行编译得到。

S406,记录用于下载移动应用程序的下载地址。

具体地,下载地址可以包括服务器地址、移动应用程序在服务器上的存储路径以及移动应用程序名称。下载地址也可以仅包括移动应用程序在服务器上的存储路径以及移动应用程序名称。下载地址可以表示为URL(Uniform Resource Locator,统一资源定位符)。

S408,生成用于获取下载地址的条码。

其中,条码(bar code)是将字符按照预设规则编码得到的可还原出字符的图形,条码可以包括条形码和二维条码(2-dimensional bar code)。条形码是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。常见的条形码是由反射率相差很大的黑条(简称条)和白条(简称空)排成的平行线图案。二维条码简称二维码,是指用某种特定的几何图形按一定规律在平面二维方向分布的黑白相间的图形记录数据符号信息的条码。

生成用于获取下载地址的条码,具体可以是直接将下载地址进行编码得到条码。生成用于获取下载地址的条码,具体也可以是将用于据以获得该下载地址的中间数据。中间数据比如可以是移动应用程序对应的程序开发者标识,或者是移动应用程序的程序标识。中间数据可以是URL形式。

S410,将条码返回至第一终端进行显示,使得第二终端采集条码并据以获取下载地址,以及根据下载地址下载移动应用程序并测试。

具体地,服务器将条码返回至第一终端,第一终端则显示该条码。在一个实施例中,步骤S410包括:将条码返回至第一终端,由第一终端上运行的开发程序展示。

第二终端可以采集由第一终端显示的条码,根据该条码获取用于下载移动应用程序的下载地址,根据下载地址下载移动应用程序,提供移动应用程序的运行环境,从而在该运行环境中运行移动应用程序。

其中,第二终端根据条码获取下载地址,具体可直接从条码中解析出下载地址。第二终端根据条码获取下载地址,也可以从条码中解析出用于据以获得下载地址的中间数据后,再根据该中间数据获取下载地址。

进一步地,第二终端对运行的移动应用程序进行测试,具体可获取针对移动应用程序的测试指令,由移动应用程序对测试指令进行响应。测试指令是用于测试移动应用程序的指令,可由用户触发,也可以通过执行自动化测试用例触发。第二终端还可以将移动应用程序对测试指令的响应进行统计分析,得到测试报告。

上述移动应用程序测试方法,当第一终端上的被测代码具有测试需求时,接收第一终端发送的被测代码,将被测代码编译为移动应用程序,记录该移动应用程序的下载地址,并生成用于获取该下载地址的条码发送至第一终端。用于测试移动应用程序的第二终端就可以采集第一终端显示的条码,并根据该条码获得下载地址,进而下载该移动应用程序并进行测试。对于第二终端的用户来说,仅需要通过第二终端采集条码就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。而且,由于第一终端并不直接编译,可避免第一终端在编译时在移动应用程序中加入恶意代码。

而且,服务器接收第一终端通过第一终端上运行的开发程序编辑被测代码后发送的被测代码,将条码返回至第一终端,由第一终端上运行的开发程序展示。这样程序开发者在使用开发程序开发移动应用程序的过程中,就可以随时进行移动应用程序的测试,提高了开发移动应用程序的操作便利性。

在一个实施例中,步骤S408包括:根据与被测代码对应的程序开发者标识生成条码。步骤S410包括:将条码返回至第一终端进行显示,使得第二终端采集条码并解析得到程序开发者标识;接收第二终端发送的程序开发者标识和第二终端登录所用的用户标识;当程序开发者标识和用户标识相匹配时,向第二终端反馈下载地址,使得第二终端根据下载地址下载移动应用程序并测试。

其中,程序开发者标识用于唯一标识程序开发者,与被测代码对应的程序开发者标识则是该被测代码的程序开发者的唯一标识。程序开发者在第一终端上通过开发程序,使用事先注册的程序开发者标识登录服务器后,编辑被测代码以进行移动应用程序的开发工作。第一终端可将被测代码与相应的程序开发者标识一同上传到服务器。服务器将程序开发者标识直接编码到条码中,并将该条码返回至第一终端,由第一终端显示。

进一步地,第二终端采集由第一终端显示的条码,对该条码进行解析得到程序开发者标识。第二终408端以用户标识登录到服务器,第二终端获取登录所用的该用户标识,将解析得到的程序开发者标识和该用户标识上传到服务器,由服务器判断该程序开发者标识和该用户标识是否匹配。程序开发者标识和用户标识是否匹配表示该程序开发者标识是否对该用户标识开放测试权限,当程序开发者标识和用户标识匹配时表示该程序开发者标识对该用户标识开放测试权限。程序开发者标识可以与多余一个的用户标识存在匹配关系,于是一个程序开发者可以向多个测试人员开放测试权限。相匹配的程序开发者标识和用户标识可以相同,于是一个用户可以同时作为一个移动应用程序的程序开发者和测试人员。

更进一步地,程序开发者标识和下载地址具有对应关系,当程序开发者标识和用户标识相匹配时,服务器向第二终端反馈与程序开发者标识对应的下载地址。当程序开发者标识对应的下载地址为多个时,服务器可选择记录时间最晚的下载地址,并将该下载地址反馈至第二终端。

本实施例中,条码根据程序开发者标识生成,第二终端采集该条码并解析可以得到程序开发者标识,利用该程序开发者标识和第二终端上登录的用户标识是否匹配,可以约束移动应用程序的测试人员范围,克服移动应用程序在发布前被泄露的风险。

在一个实施例中,该移动应用程序测试方法还包括:接收第一终端发送的指定页面的路径;步骤S408包括:根据指定页面的路径生成用于获取下载地址的条码;步骤S410包括:将条码返回至第一终端进行显示,使得第二终端采集条码并据以获取指定页面的路径和下载地址,根据下载地址下载移动应用程序并根据路径进入指定页面进行测试。

其中,指定页面的路径可在开发程序中配置,可与被测代码一同上传至服务器。指定页面的路径用于标识移动应用程序中的指定页面。

具体地,服务器在生成条码时,可将指定页面的路径与下载地址编码得到条码,第二终端在采集条码后,可直接从条码中解析出指定页面的路径与下载地址。服务器在生成条码时,可将指定页面的路径与用于据以获得下载地址的中间数据编码得到条码,第二终端在采集到条码后,可直接从条码中解析出指定页面的路径,并根据解析出的中间数据从服务器获取下载地址。

进一步地,第二终端在获取到下载地址后,根据该下载地址下载移动应用程序,并将得到的指定页面的路径透传给移动应用程序,使得移动应用程序根据该指定页面的路径进入到指定页面,从而从指定页面开始进行测试。第二终端根据路径进入指定页面进行测试,具体可获取针对移动应用程序的指定页面的测试指令,由移动应用程序对该测试指令进行响应。

本实施例中,通过条码可以对移动应用程序中具体的页面进行指定,使得采集条码的第二终端可以直接进入指定页面进行测试,使得测试更加具有针对性。而且无需在测试时手工定位页面,提高了测试效率。

如图5所示,在一个实施例中,提供了一种移动应用程序测试方法,本实施例中仍以该方法应用于图1中的服务器进行举例说明。该方法具体包括如下步骤:

S502,接收第一终端发送的被测代码、程序开发者标识和指定页面的路径。

S504,将被测代码编译为移动应用程序。

S506,记录用于下载移动应用程序的下载地址。

S508,根据程序开发者标识、指定页面的路径、条码有效时长和移动应用程序的散列值生成条码。

其中,服务器在生成条码时,可以根据程序开发者标识生成条码,也可以根据指定页面的路径、条码有效时长和移动应用程序的散列值中的一种或几种的组合以及程序开发者标识生成条码。散列值可以称为哈希值,可采用MD5(Message Digest Algorithm 5,中文名为消息摘要算法第五版)计算得到。条码有效时长可根据需要设置,如采用30秒至10分钟的任意值,具体如2分钟。

具体地,服务器还可以将程序开发者标识、指定页面的路径、条码有效时长和移动应用程序的散列值作为参数携带在用于发起访问的URL中,该URL可以访问服务器,该URL还可以包括标识该URL用于测试移动应用程序的预定义标识。

S510,将条码返回至第一终端进行显示,使得第二终端采集条码并解析得到程序开发者标识、指定页面的路径、条码有效时长和移动应用程序的散列值。具体地,第二终端解析条码得到的数据与生成条码所需的数据一致。

S512,接收第二终端发送的登录所用的用户标识以及解析得到的程序开发者标识、条码有效时长和移动应用程序的散列值。

S514,当程序开发者标识与用户标识相匹配,且条码已存活时长未超过条码有效时长,且接收的散列值与当前对移动应用程序计算出的散列值一致时,向第二终端反馈与程序开发者标识对应的移动应用程序的下载地址、移动应用程序的散列值以及测试有效时长。

具体地,服务器判断接收到的程序开发者标识与用户标识是否匹配。服务器若还接收到条码有效时长,还需要判断条码自生成起到当前时间的条码已存活时长是否超过条码有效时长。服务器若还接收到移动应用程序的散列值,还需要当前对服务器上的移动应用程序计算散列值,并判断接收到的散列值与当前对移动应用程序计算出的散列值是否一致。当程序开发者标识与用户标识相匹配,且条码自生成起到当前时间的条码已存活时长未超过条码有效时长,且接收的散列值与当前对移动应用程序计算出的散列值一致时标识鉴权通过。

S516,接收第二终端根据下载地址发起的下载请求。

S518,根据下载请求向第二终端返回移动应用程序,使得第二终端在返回的移动应用程序的散列值与对下载的移动应用程序计算出的散列值一致时,根据指定页面的路径进入指定页面进行测试,并在移动应用程序的已存活时长达到测试有效时长时,删除已下载的移动应用程序。

其中,测试有效时长大于条码有效时长,如可采用1至12小时中的任意值,具体如2小时。

本实施例中,对于第二终端的用户来说,仅需要通过第二终端采集条码就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。而且,由于第一终端并不直接编译,可避免第一终端在编译时在移动应用程序中加入恶意代码。根据程序开发者标识、指定页面的路径、条码有效时长和移动应用程序的散列值生成条码,其中程序开发者标识、条码有效时长和移动应用程序的散列值可以用于鉴权,保证条码的合法性。向第二终端反馈移动应用程序的散列值以及测试有效时长,可以进一步保证测试安全性。

图6为一个实施例中一种移动应用程序测试方法的流程示意图。本实施例以该方法应用于上述图1中的第二终端进行举例说明。参照图6,该方法具体包括如下步骤:

S602,采集条码。

具体地,第一终端向服务器发送被测代码,由服务器将被测代码编译为移动应用程序,记录用于下载移动应用程序的下载地址,生成用于获取下载地址的条码。第一终端接收服务器反馈的条码并显示。第二终端采集条码。

S604,根据条码获取用于下载移动应用程序的下载地址。

第二终端根据条码获取下载地址,具体可直接从条码中解析出下载地址。第二终端根据条码获取下载地址,也可以从条码中解析出用于据以获得下载地址的中间数据后,再根据该中间数据获取下载地址。

S606,根据下载地址下载移动应用程序。

具体地,第二终端可根据下载地址向服务器发起下载请求,并接收服务器根据该下载请求反馈的移动应用程序。

S608,运行移动应用程序。

具体地,第二终端可提供移动应用程序的运行环境,从而在该运行环境中运行移动应用程序。

S610,获取针对移动应用程序的测试指令,由移动应用程序对测试指令进行响应。

测试指令是用于测试移动应用程序的指令,可由用户触发,也可以通过执行自动化测试用例触发。第二终端还可以将移动应用程序对测试指令的响应进行统计分析,得到测试报告。

上述移动应用程序测试方法,通过采集条码就可以下载移动应用程序,运行该移动应用程序,获取针对该移动应用程序的测试指令,由该移动应用程序对该测试指令进行响应,从而完成对移动应用程序的测试。对于用户,仅需要通过操作触发条码的采集就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。

在一个实施例中,移动应用程序是由终端通过终端上运行的开发程序将被测代码上传至服务器后,由服务器将被测代码进行编译得到并存储,并由服务器记录用于下载移动应用程序的下载地址。

条码由服务器生成并发送至终端,并由终端通过开发程序进行展示。

本实施例中,接收第一终端通过第一终端上运行的开发程序编辑被测代码后发送的被测代码,将条码返回至第一终端,由第一终端上运行的开发程序展示。这样程序开发者在使用开发程序开发移动应用程序的过程中,就可以随时进行移动应用程序的测试,提高了开发移动应用程序的操作便利性。

在一个实施例中,该移动应用程序测试方法还包括:根据条码获取指定页面的路径;步骤S608之后,该移动应用程序测试方法还包括:将指定页面的路径传递至移动应用程序,使得移动应用程序进入指定页面。

具体地,第二终端在获取到下载地址后,根据该下载地址下载移动应用程序,并将得到的指定页面的路径透传给移动应用程序,使得移动应用程序根据该指定页面的路径进入到指定页面,从而从指定页面开始进行测试。第二终端根据路径进入指定页面进行测试,具体可获取针对移动应用程序的指定页面的测试指令,由移动应用程序对该测试指令进行响应。

本实施例中,通过条码可以对移动应用程序中具体的页面进行指定,使得采集条码的第二终端可以直接进入指定页面进行测试,使得测试更加具有针对性。而且无需在测试时手工定位页面,提高了测试效率。

图7为一个实施例中步骤S604的流程示意图。参照图7,步骤S604具体包括如下步骤:

S702,解析条码,得到程序开发者标识。

其中,程序开发者标识用于唯一标识程序开发者,与被测代码对应的程序开发者标识则是该被测代码的程序开发者的唯一标识。程序开发者在第一终端上通过开发程序,使用事先注册的程序开发者标识登录服务器后,编辑被测代码以进行移动应用程序的开发工作。第一终端可将被测代码与相应的程序开发者标识一同上传到服务器。服务器将程序开发者标识直接编码到条码中,并将该条码返回至第一终端,由第一终端显示。第二终端采集由第一终端显示的条码,对该条码进行解析得到程序开发者标识。

S704,将本地登录所用的用户标识和程序开发者标识发送至服务器。

S706,接收服务器在用户标识和程序开发者标识相匹配时返回的下载地址,下载地址用于下载与程序开发者标识对应的移动应用程序。

具体地,第二终408端以用户标识登录到服务器,第二终端获取登录所用的该用户标识,将解析得到的程序开发者标识和该用户标识上传到服务器,由服务器判断该程序开发者标识和该用户标识是否匹配。程序开发者标识和用户标识是否匹配表示该程序开发者标识是否对该用户标识开放测试权限,当程序开发者标识和用户标识匹配时表示该程序开发者标识对该用户标识开放测试权限。程序开发者标识可以与多余一个的用户标识存在匹配关系,于是一个程序开发者可以向多个测试人员开放测试权限。相匹配的程序开发者标识和用户标识可以相同,于是一个用户可以同时作为一个移动应用程序的程序开发者和测试人员。移动应用程序可由服务器将被测代码进行编译得到,也可由第一终端通过开发程序将被测代码进行编译得到。

更进一步地,程序开发者标识和下载地址具有对应关系,当程序开发者标识和用户标识相匹配时,服务器向第二终端反馈与程序开发者标识对应的下载地址。当程序开发者标识对应的下载地址为多个时,服务器可选择记录时间最晚的下载地址,并将该下载地址反馈至第二终端。

本实施例中,条码根据程序开发者标识生成,第二终端采集该条码并解析可以得到程序开发者标识,利用该程序开发者标识和第二终端上登录的用户标识是否匹配,可以约束移动应用程序的测试人员范围,克服移动应用程序在发布前被泄露的风险。

在一个实施例中,该移动应用程序测试方法还包括在移动应用程序的测试有效期失效时删除已下载的移动应用程序的步骤。参照图8,该在移动应用程序的测试有效期失效时删除已下载的移动应用程序的步骤具体包括如下步骤:

S802,根据条码获取移动应用程序的测试有效时长。

S804,获取移动应用程序自生成起至当前时间的已存活时长。

S806,当已存活时长达到测试有效时长时,删除已下载的移动应用程序。

其中,测试有效时长表示移动应用程序可被测试的有效时长。若移动应用程序自生成起至当前时间的已存活时长达到了测试有效时长,说明移动应用程序所允许的测试有效时长已经结束,直接删除已下载的移动应用程序,可以通过约束移动应用程序的测试时长,保证移动应用程序的安全性。

图9为一个实施例中一种移动应用程序测试方法的流程示意图。本实施例以该方法应用于上述图1中的第一终端进行举例说明。参照图9,该方法具体包括如下步骤:

S902,获取测试指令。

S904,根据测试指令向服务器发送被测代码,使得服务器将被测代码编译为移动应用程序,并记录用于下载移动应用程序的下载地址。

S906,接收服务器反馈的用于获取下载地址的条码。

S908,显示条码,使得移动终端采集条码并据以获取下载地址,以及根据下载地址下载移动应用程序并测试。

在一个实施例中,该移动应用程序测试方法还包括:根据测试指令向服务器发送指定页面的路径,使得服务器根据指定页面的路径生成条码。步骤S908包括:显示条码,使得移动终端采集条码并据以获取指定页面的路径和下载地址,根据下载地址下载移动应用程序并根据路径进入指定页面进行测试。

在一个实施例中,该移动应用程序测试方法还包括:根据测试指令向服务器发送与被测代码对应的程序开发者标识,使得服务器根据程序开发者标识生成条码。步骤S908包括:显示条码,使得移动终端采集条码并解析得到程序开发者标识,将程序开发者标识和移动终端登录所用的用户标识发送至服务器,接收程序开发者标识和用户标识相匹配时由服务器反馈的下载地址,并根据下载地址下载移动应用程序并测试。

上述移动应用程序测试方法,触发测试后,将被测代码发送至服务器,由将被测代码编译为移动应用程序,记录该移动应用程序的下载地址。接收服务器生成的条码并显示,用于测试移动应用程序的移动终端就可以采集显示的条码,并根据该条码获得下载地址,进而下载该移动应用程序并进行测试。对于移动终端的用户来说,仅需要通过移动终端采集条码就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。而且,由于第一终端并不直接编译,可避免第一终端在编译时在移动应用程序中加入恶意代码。

图10为一个实施例中移动应用程序测试装置1000的结构框图。参照图10,该移动应用程序测试装置1000包括:被测代码接收模块1010、编译模块1020、记录模块1030、条码生成模块1040和条码处理模块1050。

被测代码接收模块1010,用于接收第一终端发送的被测代码。

编译模块1020,用于将被测代码编译为移动应用程序。

记录模块1030,用于记录用于下载移动应用程序的下载地址。

条码生成模块1040,用于生成用于获取下载地址的条码。

条码处理模块1050,用于将条码返回至第一终端进行显示,使得第二终端采集条码并据以获取下载地址,以及根据下载地址下载移动应用程序并测试。

上述移动应用程序测试装置1000,当第一终端上的被测代码具有测试需求时,接收第一终端发送的被测代码,将被测代码编译为移动应用程序,记录该移动应用程序的下载地址,并生成用于获取该下载地址的条码发送至第一终端。用于测试移动应用程序的第二终端就可以采集第一终端显示的条码,并根据该条码获得下载地址,进而下载该移动应用程序并进行测试。对于第二终端的用户来说,仅需要通过第二终端采集条码就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。而且,由于第一终端并不直接编译,可避免第一终端在编译时在移动应用程序中加入恶意代码。

在一个实施例中,条码生成模块1040还用于根据与被测代码对应的程序开发者标识生成条码。

如图11所示,条码处理模块1050包括:条码返回模块1051、鉴权数据接收模块1052和下载地址反馈模块1053。

条码返回模块1051,用于将条码返回至第一终端进行显示,使得第二终端采集条码并解析得到程序开发者标识。

鉴权数据接收模块1052,用于接收第二终端发送的程序开发者标识和第二终端登录所用的用户标识。

下载地址反馈模块1053,用于当程序开发者标识和用户标识相匹配时,向第二终端反馈下载地址,使得第二终端根据下载地址下载移动应用程序并测试。

本实施例中,条码根据程序开发者标识生成,第二终端采集该条码并解析可以得到程序开发者标识,利用该程序开发者标识和第二终端上登录的用户标识是否匹配,可以约束移动应用程序的测试人员范围,克服移动应用程序在发布前被泄露的风险。

在一个实施例中,被测代码接收模块1010还用于接收第一终端通过第一终端上运行的开发程序编辑被测代码后发送的被测代码。

条码处理模块1050还用于将条码返回至第一终端,由第一终端上运行的开发程序展示。

本实施例中,接收第一终端通过第一终端上运行的开发程序编辑被测代码后发送的被测代码,将条码返回至第一终端,由第一终端上运行的开发程序展示。这样程序开发者在使用开发程序开发移动应用程序的过程中,就可以随时进行移动应用程序的测试,提高了开发移动应用程序的操作便利性。

在一个实施例中,被测代码接收模块1010还用于接收第一终端发送的指定页面的路径。

条码生成模块1040还用于根据指定页面的路径生成用于获取下载地址的条码。

条码处理模块1050还用于将条码返回至第一终端进行显示,使得第二终端采集条码并据以获取指定页面的路径和下载地址,根据下载地址下载移动应用程序并根据路径进入指定页面进行测试。

本实施例中,通过条码可以对移动应用程序中具体的页面进行指定,使得采集条码的第二终端可以直接进入指定页面进行测试,使得测试更加具有针对性。而且无需在测试时手工定位页面,提高了测试效率。

如图12所示,在一个实施例中,提供了一种移动应用程序测试装置1200,包括:条码采集模块1210、条码处理模块1220、下载模块1230和测试模块1240。

条码采集模块1210,用于采集条码。

条码处理模块1220,用于根据条码获取用于下载移动应用程序的下载地址。

下载模块1230,用于根据下载地址下载移动应用程序。

测试模块1240,用于运行移动应用程序。获取针对移动应用程序的测试指令,由移动应用程序对测试指令进行响应。

上述移动应用程序测试装置1200,通过采集条码就可以下载移动应用程序,运行该移动应用程序,获取针对该移动应用程序的测试指令,由该移动应用程序对该测试指令进行响应,从而完成对移动应用程序的测试。对于用户,仅需要通过操作触发条码的采集就可以进行移动应用程序的测试,操作简便,提高了移动应用程序测试效率。

在一个实施例中,移动应用程序是由终端通过终端上运行的开发程序将被测代码上传至服务器后,由服务器将被测代码进行编译得到并存储,并由服务器记录用于下载移动应用程序的下载地址。

条码由服务器生成并发送至终端,并由终端通过开发程序进行展示。

本实施例中,接收第一终端通过第一终端上运行的开发程序编辑被测代码后发送的被测代码,将条码返回至第一终端,由第一终端上运行的开发程序展示。这样程序开发者在使用开发程序开发移动应用程序的过程中,就可以随时进行移动应用程序的测试,提高了开发移动应用程序的操作便利性。

在一个实施例中,条码处理模块1220还用于根据条码获取指定页面的路径。

测试模块1240还用于在运行移动应用程序之后,将指定页面的路径传递至移动应用程序,使得移动应用程序进入指定页面。

本实施例中,通过条码可以对移动应用程序中具体的页面进行指定,使得采集条码的第二终端可以直接进入指定页面进行测试,使得测试更加具有针对性。而且无需在测试时手工定位页面,提高了测试效率。

在一个实施例中,条码处理模块1220还用于解析条码,得到程序开发者标识;将本地登录所用的用户标识和程序开发者标识发送至服务器;接收服务器在用户标识和程序开发者标识相匹配时返回的下载地址,下载地址用于下载与程序开发者标识对应的移动应用程序。

本实施例中,条码根据程序开发者标识生成,第二终端采集该条码并解析可以得到程序开发者标识,利用该程序开发者标识和第二终端上登录的用户标识是否匹配,可以约束移动应用程序的测试人员范围,克服移动应用程序在发布前被泄露的风险。

如图13所示,在一个实施例中,移动应用程序测试装置1200还包括:移动应用程序销毁模块1250,用于根据条码获取移动应用程序的测试有效时长;获取移动应用程序自生成起至当前时间的已存活时长;当已存活时长达到测试有效时长时,删除已下载的移动应用程序。

其中,测试有效时长表示移动应用程序可被测试的有效时长。若移动应用程序自生成起至当前时间的已存活时长达到了测试有效时长,说明移动应用程序所允许的测试有效时长已经结束,直接删除已下载的移动应用程序,可以通过约束移动应用程序的测试时长,保证移动应用程序的安全性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,该存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1