一种Android端测试环境备份与恢复方法与流程

文档序号:22966416发布日期:2020-11-19 21:37阅读:133来源:国知局
一种Android端测试环境备份与恢复方法与流程

本发明属于实现用户数据的备份与恢复技术领域,尤其涉及一种android端测试环境备份与恢复方案方法、装置、电子设备和存储介质。



背景技术:

在android软件测试中,我们常常需要利用已有数据进行软件测试,例如聊天软件需要聊天记录,文字编辑软件需要文本文件,财务软件需要账单记录等。这些由用户在使用中生成的文件,我们称之为用户数据。

在软件测试中,卸载、清除数据等操作较为常见。而android卸载一个软件,会同时清空用户数据。如果每次都要手动新建数据进行测试,第一会大大降低我们的测试效率,第二不能保证每次新建数据完全一致。并且android机型繁多,如果进行兼容性测试,以上的问题会更加严重。

虽然现在有各种各样的自动化测试框架,但是这些框架都是以编程的形式替测试人员操作,同时为了避免脏数据影响,一般都会先卸载旧的版本,再安装新版本进行测试。并不能解决用户数据生成问题。而如果通过编程的形式预先生成用户数据,则会有数据量不够多、数据范围覆盖不全、占用开发时间等缺点。

android是google开发、维护的一款手机操作系统。google会给android开发者最佳推荐做法,其中android系统下的应用程序数据会存储在对应的存储目录下。这种由google官方推荐的目录,称之为标准文件夹。然而基于android是开放系统,开发者可以不根据google推荐的做法,而是把数据存在自定义目录下,我们称之为自定义文件夹。标准文件夹和自定义文件夹的就差别在于,自定义文件没有统一的路径规范,标准不一。现有第三方备份软件在进行数据备份和恢复时,只备份标准数据和文件,忽略了备份自定义文件夹,造成自定义文件下的数据丢失,导致备份不完整。如何实现android端测试环境下数据的备份与恢复,而不出现数据遗失,是目前急需要解决的技术问题。



技术实现要素:

为解决上述技术缺陷,本发明提供一种android端测试环境备份与恢复方法,其特征在于,包括步骤:

连接第一android端,用于获取待备份数据;待备份数据由安装在第一android端上的应用软件生成,包括标准数据和自定义数据;

备份标准数据和所述自定义数据,并备份自定义数据的保存路径;

连接基于第二android端,将备份后的标准数据恢复到第二android端对应的应用软件,并获取保存路径,将备份后的自定义数据恢复到第二android端对应的应用软件。

对应的,提供一种android端测试环境备份与恢复的应用装置,其特征在于,包括:

数据获取模块,通过连接第一android端,用于获取待备份数据;待备份数据由安装在第一android端上的应用软件生成,包括标准数据和自定义数据;

数据备份模块,通过备份标准数据和自定义数据,并备份自定义数据的保存路径;

数据恢复模块,通过连接基于第二android端,将备份后的标准数据恢复到第二android端对应的应用软件,并获取保存路径,将备份后的所述自定义数据恢复到第二android端对应的应用软件。

技术效果说明:通过对第一android端数据的获取,经过备份,然后恢复到第二android端,以便于测试人员对第二android端进行测试。

更为重要的是,在对第一android端数据进行备份时,不仅备份标准数据,还要备份自定义数据,同时需要保存自定义数据的存放路径。以实现针对第一android端数据的完整存储,防止数据遗漏。

另外,通过数据恢复,将标准数据以及自定义数据,依据自定义数据的存储路径,恢复到第二android端,以帮助测试人员进行测试。

改进的,备份标准数据和自定义数据,并备份自定义数据的保存路径的步骤包括:

抓取自定义数据的保存路径;

抓取标准数据和自定义数据;

将标准数据、自定义数据以及保存路径进行备份。

对应的,上述装置中的数据备份模块包括:

保护路径抓取单元,用于抓取自定义数据的保存路径;

数据抓取单元,用于抓标准数据和自定义数据;

数据备份单元,用于述标准数据自定义数据以及保存路径进行备份。

技术效果说明,首先抓取自定义数据的保存路径,再通过路径抓取自定义数据和标准数据,并将所述标准数据、自定义数据和保存路径进行备份。

更为重要的是,标准数据和自定义数据以及保存路径进行分开备份。

另外,通过备份自定义数据的保存路径,一方面实现自定义数据的抓取,另一方面实现数据的恢复。

改进的,连接第一android端,用于获取待备份数据的步骤包括:

获取连接触发指令;

调用adb程序接口,连接第一android端至备份端。

对应的,上述装置中数据获取模块包括:

触发指令获取单元,用于获取连接触发指令;

备份端连接单元,用于调用adb程序接口,连接第一android端至备份端。

技术效果说明,连接第一android端,通过获取连接触发指令,进一步调用adb程序接口,连接第一android端至备份端。

更为重要的是,调用adb程序接口,是为了实现第一android端与备份端的数据传输通道的开启。

另外,通过触发指令,用于开始备份命令,同时,通过调用adb程序接口,将数据通过adb程序从第一android端备份到备份端。

改进的,将标准数据、自定义数据以及保存路径进行备份的步骤包括:

打包标准数据、自定义数据以及保存路径,以生成备份包;

将备份包进行备份。

对应的,上述数据备份单元包括:

数据打包子单元,用于打包标准数据、自定义数据以及保存路径,以生成备份包;

备份子单元,用于将备份包进行备份。

技术效果说明,通过打包标准数据、自定义数据以及保存路径,以生成备份包,接下来就是对备份包的进一步备份。

更为重要的是,数据打包子单元和备份子单元,通过两个指令,实现数据的打包和备份。

另外,通过对于标准数据、自定义数据以及保存路径的打包,实现了从第一android端数据的完整备份,然后经过打包,再经历备份,经所述数据传输给到备份端。

本发明还提供一种电子设备,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序在所述处理器中执行可实现上述任一种方法。其中,电子设备可以为移动终端或web端。

本发明还提供一种存储介质,存储计算机程序,所述计算机程序在处理器中执行可实现上述任一种方法。

本发明提供一种android端测试环境备份与恢复方法连接第一android端,用于获取待备份数据;待备份数据由安装在第一android端上的应用软件生成,包括标准数据和自定义数据;备份标准数据和所述自定义数据,并备份自定义数据的保存路径;连接基于第二android端,将备份后的标准数据恢复到第二android端对应的应用软件,并获取保存路径,将备份后的自定义数据恢复到第二android端对应的应用软件。在对第一android端数据进行备份时,不仅备份标准数据,还要备份自定义数据,同时需要保存自定义数据的存放路径。以实现针对第一android端数据的完整存储,防止数据遗漏。另外,通过数据恢复,将标准数据以及自定义数据,并依据自定义数据的保存路径,恢复到第二android端,以帮助测试人员进行测试。

附图说明

图1为一实施例提供的android端测试环境备份与恢复方法的流程图;

图2为一实施例提供的对图1中方法的改进方法流程图;

图3为一实施例提供的对图1中方法的改进方法流程图;

图4为一实施例提供的对图2中方法的改进方法流程图;

图5为图1中数据备份模块的架构图;

图6为图2中数据获取模块的架构图。

图7为图3中数据获取模块的架构图;

图8为图6中数据备份单元的架构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,在本发明的描述中,除非另有明确的规定和限定,术语“存储介质”可以是rom、ram、磁碟或者光盘等各种可以存储计算机程序的介质。术语“处理器”可以是cpld(complexprogrammablelogicdevice:复杂可编程逻辑器件)、fpga(field-programmablegatearray:现场可编程门阵列)、mcu(microcontrollerunit:微控制单元)、plc(programmablelogiccontroller:可编程逻辑控制器)以及cpu(centralprocessingunit:中央处理器)等具备数据处理功能的芯片或电路。术语“电子设备”可以是具有数据处理功能和存储功能的任何设备,通常可以包括固定终端和移动终端。固定终端如台式机等。移动终端如手机、pad以及移动机器人等。此外,后续所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。

下面,本发明提出部分优选实施例以教导本领域技术人员实现。

实施例一:

参见图1,本实施例提供一种android端测试环境备份与恢复方法,包括步骤:

s1、连接第一android端,用于获取待备份数据;待备份数据由安装在第一android端上的应用软件生成,包括标准数据和自定义数据;

s2、备份标准数据和所述自定义数据,并备份自定义数据的保存路径;

s3、连接基于第二android端,将备份后的标准数据恢复到第二android端对应的应用软件,并获取保存路径,将备份后的自定义数据恢复到第二android端对应的应用软件。

实施例二

参见图5,对应的,本实施例提供一种android端测试环境备份与恢复的应用装置,包括:

数据获取模块1,通过连接第一android端,用于获取待备份数据;待备份数据由安装在第一android端上的应用软件生成,包括标准数据和自定义数据;

数据备份模块2,通过备份标准数据和自定义数据,并备份自定义数据的保存路径;

数据恢复模块3,通过连接基于第二android端,将备份后的标准数据恢复到第二android端对应的应用软件,并获取保存路径,将备份后的所述自定义数据恢复到第二android端对应的应用软件。

技术效果说明:通过对第一android端数据的获取,经过备份,然后恢复到第二android端,以便于测试人员对第二android端进行测试。

更为重要的是,在对第一android端数据进行备份时,不仅备份标准数据,还要备份自定义数据,同时需要保存自定义数据的存放路径。以实现针对第一android端数据的完整存储,防止数据遗漏。

另外,通过数据恢复,将标准数据以及自定义数据,依据自定义数据的存储路径,恢复到第二android端,以帮助测试人员进行测试。

需要说明的是,如果用户有指定自定义文件夹,则调用tar命令备份自定义文件夹,得到自定义文件夹。在创建的自定义文件夹中写入备份时间、应用包名、备份文件、用户自定义文件夹路径等信息。

还需要说明的是,tar命令unix系统上的归档打包工具,可以将多个文件合并为一个文件。

提供一个数据备份的实施例,步骤如下:

a)接受用户输入的应用文件夹名(如com.example),以及自定义文件夹路径;

b)调用adbshell,进入测试设备系统中,并且调用su获得root权限;

c)调用killall命令停止要备份的应用;

d)调用cp命令备份/data/app/com.example文件,得到com.example.apk文件,存放到临时文件夹下(如/sdcard/temp);

e)调用tar命令备份/data/data/com.example目录,得到data.tar文件;

f)调用tar命令备份/sdcard/android/data/com.example目录,得到external.tar文件;

g)如果用户有指定自定义文件夹,则调用tar命令备份自定义文件夹,得到custom.tar文件;

h)创建com.example.properties文件,写入备份时间、应用包名、备份文件md5、用户自定义文件夹路径等信息;

i)调用tar命令,把data.tar、external.tar、custom.tar、com.example.properties打成com.example.tar文件,得到最终的备份文件;

j)调用adbpull命令,将/sdcard/temp/com.example.tar文件复制到电脑上。

提供一个数据恢复的实施例,步骤如下:

1)接受用户输入的归档备份文件名称(如com.example.tar);

2)调用adbuninstallcom.example卸载旧的应用程序;

3)调用tar命令解压com.example.tar,得到com.example.apk、data.tar、external.tar、custom.tar、com.example.properties;

4)调用adbinstallcom.example.apk安装应用程序;

5)调用tar命令解data.tar压缩包,得到/data/data/com.example目录的备份文件,并且用adbpush命令复制到临时目录下(如/sdcard/temp下);

6)调用tar命令解external.tar压缩到,得到/sdcard/android/data/com.example目录的备份文件,并且用adbpush命令复制到临时目录下;

7)读取com.example.properties文件,判断是否有自定义文件夹,如果有,则调用tar命令解压custom.tar文件,并且用adbpush命令复制到com.example.properties中指定的路径下;

8)调用adbshell,进入测试设备系统中,并且调用su获得root权限;

9)调用cp命令,复制/sdcard/temp目录下的文件到/data/data/com.example、/sdcard/android/data/com.example目录下;

10)调用chmod命令修改以上文件为对应权限。

同时提供一个英文缩写代表的操作指令,如表1。

表1操作指令的英文缩写

实施例三

参见图2,改进的,步骤s2步骤包括:

s21、抓取自定义数据的保存路径;

s22、抓取标准数据和自定义数据;

s23、将标准数据、自定义数据以及保存路径进行备份。

实施例四

参见图6,对应的,数据备份模块2包括:

保护路径抓取单元21,用于抓取自定义数据的保存路径;

数据抓取单元22,用于抓标准数据和自定义数据;

数据备份单元23,用于述标准数据自定义数据以及保存路径进行备份。

技术效果说明,首先抓取自定义数据的保存路径,再通过路径抓取自定义数据和标准数据,并将所述标准数据、自定义数据和保存路径进行备份。

更为重要的是,标准数据和自定义数据以及保存路径进行分开备份。

另外,通过备份自定义数据的保存路径,一方面实现自定义数据的抓取,另一方面实现数据的恢复。

实施例五

参见图3,改进的,步骤s1包括:

s11、获取连接触发指令;

s12、调用adb程序接口,连接第一android端至备份端。

实施例六

参见图7,对应的,数据获取模块1包括:

触发指令获取单元11,用于获取连接触发指令;

备份端连接单元12,用于调用adb程序接口,连接第一android端至备份端。

技术效果说明,连接第一android端,通过获取连接触发指令,进一步调用adb程序接口,连接第一android端至备份端。

更为重要的是,调用adb程序接口,是为了实现第一android端与备份端的数据传输通道的开启。

另外,通过触发指令,用于开始备份命令,同时,通过调用adb程序接口,将数据通过adb程序从第一android端备份到备份端。

需要说明的是,adb的全名是androiddebugbridge,在android开发环境中,adb经常用于软件开发的调试工具,使用adb工具的前提是打开手机上的usb调试,然后通过数据线连接到计算机。

实施例七

参见图4,改进的,步骤s23包括:

s231、打包标准数据、自定义数据以及保存路径,以生成备份包;

s232、将备份包进行备份。

实施例八

参见图8,对应的,数据备份单元23包括:

数据打包子单元231,用于打包标准数据、自定义数据以及保存路径,以生成备份包;

备份子单元232,用于将备份包进行备份。

技术效果说明,通过打包标准数据、自定义数据以及保存路径,以生成备份包,接下来就是对备份包的进一步备份。

更为重要的是,数据打包子单元和备份子单元,通过两个指令,实现数据的打包和备份。

另外,通过对于标准数据、自定义数据以及保存路径的打包,实现了从第一android端数据的完整备份,然后经过打包,再经历备份,经所述数据传输给到备份端。

本技术方案实现能够在多台android终端上部署同样版本、用户数据的测试环境,以便于测试相同软件和数据在不同机型上的兼容性。基于版本存档,能够方便测试从任意版本升级到最新版本下的稳定性以及数据兼容问题。同时,方便与测试框架、ci工具结合,在执行自动化测试时,可以直接使用用户数据测试,而不是通过编码模拟数据测试。因为备份文件可以恢复到其他android设备上,如果测试人员或者内部用户发现bug,可以利用备份功能,将出现问题的环境备份后发送给开发人员,开发人员即可通过恢复功能恢复到同样的环境下定位问题。

本发明还提供一种电子设备,包括存储器和处理器,所述存储器存储计算机程序,所述计算机程序在所述处理器中执行可实现上述任一种方法。其中,电子设备可以为移动终端或web端。

本发明还提供一种存储介质,存储计算机程序,所述计算机程序在处理器中执行可实现上述任一种方法。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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