1.一种自动测试Android应用启动时间的方法,其特征在于,该方法包括以下步骤:
步骤A:对需要测试的Android应用安装包进行解压缩后,形成xml格式的安装包配置文件,转到步骤B;
步骤B:对安装包配置文件进行解析,得到package和安装包的应用启动后出现的所有界面activity,在所有activity中,确定应用启动后出现的第一个界面,获取应用启动后出现的第一个界面的name;若package和name的格式均正确,转到步骤C;
步骤C:安装当前Android应用安装包,根据预先设置的测试次数,测试应用卸载后的安装时间、应用首次启动时间、应用非首次启动时间、以及应用进程关闭后的首次启动时间:C01:单次测试应用卸载后的安装时间的流程为:卸载安装后的应用程序后;再次安装当前Android应用安装包,记录再次安装时,安装开始时间戳和安装结束时间戳;将安装结束时间戳减去安装开始时间戳,得到安装时间;
测试应用卸载后的安装时间的次数达到测试次数后,根据所有测试得到的安装时间,确定应用卸载后的安装时间;
C02:单次测试应用首次启动时间的流程为:启动当前Android应用,启动的同时根据步骤B中的package和name,检测当前Android应用的进程;获取检测到当前Android应用的进程所需的时间,将该时间作为第一启动时间;
测试应用首次启动时间的次数达到测试次数后,根据所有测试得到的第一启动时间,确定应用首次启动时间;
C03:单次测试应用进程关闭后的首次启动时间的流程为:启动当前Android应用后,根据步骤B中的package和name,检测当前Android应用的进程,关闭当前Android应用的进程;
重新启动当前Android应用,启动的同时根据步骤B中的package和name,检测当前Android应用的进程;获取检测到当前Android应用的进程所需的时间,将该时间作为第二启动时间;
测试应用进程关闭后的首次启动时间的次数达到测试次数后,根据所有测试得到的第二启动时间,确定应用进程关闭后的首次启动时间;
C04:单次测试应用非首次启动时间的流程为:启动当前Android应用后,退出当前Android应用;再次启动当前Android应用,启动的同时根据步骤B中的package和name,检测当前Android应用的进程;获取检测到当前Android应用的进程所需的时间,将该时间作为第三启动时间;
测试应用非首次启动时间的次数达到测试次数后,根据所有测试得到的第三启动时间,确定应用进程关闭后的首次启动时间。
2.如权利要求1所述的自动测试Android应用启动时间的方法,其特征在于:步骤B中所述若package和name的格式均正确,会先删除所述安装包配置文件后,再转到步骤C。
3.如权利要求1所述的自动测试Android应用启动时间的方法,其特征在于:步骤B中所述package和name的格式均正确的判断方式为:判断package中是否仅由小数点、数字和/或字母组成,若是,则确认package格式正确,否则确认package格式错误;判断name中是否仅由数字和/或字母组成,若是,则确认name格式正确,否则确认name格式错误。
4.如权利要求1所述的自动测试Android应用启动时间的方法,其特征在于:步骤B中在所有activity中,确定应用启动后出现的第一个界面的具体流程为:在所有activity中,将存在首次出现界面标识
5.如权利要求1所述的自动测试Android应用启动时间的方法,其特征在于:步骤C之后还包括以下步骤:将步骤C01~C04中确定的所有时间的测试信息加载至1个静态对象中,测试信息包括测试名称、测试时间和测试结果;将所有测试信息加载至预先编写好的html格式的测试报告文件中;将测试报告文件进行保存。
6.如权利要求1至5任一项所述的自动测试Android应用启动时间的方法,其特征在于:
步骤B和步骤C之间还包括以下步骤:获取当前需要测试的智能手机的设备号,并通过该设备号链接智能手机。
7.一种实现权利要求1至6任一项所述方法的自动测试Android应用启动时间的系统,其特征在于:该系统包括应用安装包解压缩模块、安装包配置文件解析模块和应用时间测试模块;
应用安装包解压缩模块用于:对需要测试的Android应用安装包进行解压缩后,形成xml格式的安装包配置文件,向安装包配置文件解析模块发送安装包配置文件解析信号;
安装包配置文件解析模块用于:收到安装包配置文件解析信号后,对安装包配置文件进行解析,得到package和安装包的应用启动后出现的所有界面activity,在所有activity中,确定应用启动后出现的第一个界面,获取应用启动后出现的第一个界面的name;若package和name的格式均正确,向应用时间测试模块发送应用时间测试信号;
应用时间测试模块用于:收到应用时间测试信号后,安装测试所需的Android应用安装包,根据预先设置的测试次数,测试应用卸载后的安装时间、应用首次启动时间、应用非首次启动时间、以及应用进程关闭后的首次启动时间:单次测试应用卸载后的安装时间的流程为:卸载安装后的应用程序后;再次安装当前Android应用安装包,记录再次安装时,安装开始时间戳和安装结束时间戳;将安装结束时间戳减去安装开始时间戳,得到安装时间;
测试应用卸载后的安装时间的次数达到测试次数后,根据所有测试得到的安装时间,确定应用卸载后的安装时间;
单次测试应用首次启动时间的流程为:启动当前Android应用,启动的同时根据安装包配置文件解析模块中的package和name,检测当前Android应用的进程;获取检测到当前Android应用的进程所需的时间,将该时间作为第一启动时间;
测试应用首次启动时间的次数达到测试次数后,根据所有测试得到的第一启动时间,确定应用首次启动时间;
单次测试应用进程关闭后的首次启动时间的流程为:启动当前Android应用后,根据安装包配置文件解析模块中的package和name,检测当前Android应用的进程,关闭当前Android应用的进程;重新启动当前Android应用,启动的同时根据安装包配置文件解析模块中的package和name,检测当前Android应用的进程;获取检测到当前Android应用的进程所需的时间,将该时间作为第二启动时间;
测试应用进程关闭后的首次启动时间的次数达到测试次数后,根据所有测试得到的第二启动时间,确定应用进程关闭后的首次启动时间;
单次测试应用非首次启动时间的流程为:启动当前Android应用后,退出当前Android应用;再次启动当前Android应用,启动的同时根据安装包配置文件解析模块中的package和name,检测当前Android应用的进程;获取检测到当前Android应用的进程所需的时间,将该时间作为第三启动时间;
测试应用非首次启动时间的次数达到测试次数后,根据所有测试得到的第三启动时间,确定应用进程关闭后的首次启动时间。
8.如权利要求7所述的自动测试Android应用启动时间的系统,其特征在于:所述安装包配置文件解析模块若确定package和name的格式均正确,会先删除所述安装包配置文件后,再向应用时间测试模块发送应用时间测试信号。
9.如权利要求7所述的自动测试Android应用启动时间的系统,其特征在于:所述安装包配置文件解析模块确定package和name的格式均正确的方式为:判断package中是否仅由小数点、数字和/或字母组成,若是,则确认package格式正确,否则确认package格式错误;
判断name中是否仅由数字和/或字母组成,若是,则确认name格式正确,否则确认name格式错误。
10.如权利要求7至9任一项所述的自动测试Android应用启动时间的系统,其特征在于:该系统还包括测试报告生成模块,其用于:在应用时间测试模块工作完成之后,将应用时间测试模块确定的所有时间的测试信息加载至1个静态对象中,测试信息包括测试名称、测试时间和测试结果;将所有测试信息加载至预先编写好的html格式的测试报告文件中;
将测试报告文件进行保存。