CN114880244A - 应用测试方法及装置、存储介质及电子设备 - Google Patents

应用测试方法及装置、存储介质及电子设备 Download PDF

Info

Publication number
CN114880244A
CN114880244A CN202210674289.XA CN202210674289A CN114880244A CN 114880244 A CN114880244 A CN 114880244A CN 202210674289 A CN202210674289 A CN 202210674289A CN 114880244 A CN114880244 A CN 114880244A
Authority
CN
China
Prior art keywords
application
terminal
installation package
installation
application installation
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.)
Pending
Application number
CN202210674289.XA
Other languages
English (en)
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.)
Hunan Happly Sunshine Interactive Entertainment Media Co Ltd
Original Assignee
Hunan Happly Sunshine Interactive Entertainment Media Co 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 Hunan Happly Sunshine Interactive Entertainment Media Co Ltd filed Critical Hunan Happly Sunshine Interactive Entertainment Media Co Ltd
Priority to CN202210674289.XA priority Critical patent/CN114880244A/zh
Publication of CN114880244A publication Critical patent/CN114880244A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种应用测试方法及装置、存储介质及电子设备,其中,可以先获取应用安装包;将应用安装包发送到预设的终端上;控制终端对应用安装包进行安装,并在终端安装应用安装包的过程中,对应用安装包进行安装测试,获得应用安装包的安装功能测试结果;在终端对应用安装包安装完成的情况下,控制终端对应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;控制终端对应用程序进行卸载,并在终端对应用程序卸载完成后,执行针对应用程序的卸载残留验证,获得卸载残留验证结果;根据安装功能测试结果、运行功能测试结果以及卸载残留验证结果,获得应用安装包的测试结果。应用本发明提供的方法,能够提升应用程序的测试效率。

Description

应用测试方法及装置、存储介质及电子设备
技术领域
本发明涉及数据处理技术领域,特别涉及一种应用测试方法及装置、存储介质及电子设备。
背景技术
在应用程序在上线前,往往需要对待上线的应用程序进行安装、卸载等环节测试,以能够避免应用程序在应用过程中出现程序错误BUG。
现有的安装测试方式,是先通过人工将应用程序部署到终端上,然后由技术人员通过相关测试工具对应用程序进行测试,然而,现有的测试工具的测试功能较为单一,无法完成多环节的测试工作,测试效率低。
发明内容
本发明所要解决的技术问题是提供一种应用测试方法,能够提升应用程序的测试效率。
本发明还提供了一种应用测试装置,用以保证上述方法在实际中的实现及应用。
一种应用测试方法,包括:
响应于应用测试指令,获取所述应用测试指令对应的应用安装包;
将所述应用安装包发送到预设的终端上;
控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;
在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;
控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;
根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
上述的方法,可选的,还包括:
当检测到所述终端在对所述应用安装包的安装过程中产生的交互事件时,调用所述交互事件对应的处理函数对所述交互事件进行处理,所述交互事件包括弹窗事件和密码输入事件中的至少一种。
上述的方法,可选的,所述对所述应用装包进行安装测试,获得所述应用安装包的安装功能测试结果,包括:
控制所述终端处于预设的安装场景,并检测所述应用安装包在所述终端处于所述安装场景的情况下的安装状态;所述安装场景包括所述应用安装包的安装进程中断、终端剩余空间小于所述应用安装包所需安装空间和终端网络关闭中的至少一种;
根据所述安装状态获得所述应用安装包的安装功能测试结果。
上述的方法,可选的,所述控制所述终端对接收到的所述应用安装包进行安装之前,还包括:
控制所述终端安装所述应用安装包对应的历史版本应用安装包。
上述的方法,可选的,所述获取所述应用测试指令对应的应用安装包,包括:
获取所述应用测试指令中包含的待测试版本号;
根据所述待测试版本号遍历预设的文件夹,以获得所述应用测试指令对应的应用安装包。
上述的方法,可选的,所述将所述应用安装包发送到预设的终端上,包括:
确定所述应用安装包所属的应用发布渠道;
确定所述应用发布渠道对应的终端集合;所述终端集合中包含各个预设的候选终端;
在各个所述候选终端中选取出处于空闲状态的终端;
将所述应用安装包发送到所述终端上。
一种应用测试装置,包括:
获取单元,用于响应应用测试指令,获取所述应用测试指令对应的应用安装包;
发送单元,用于将所述应用安装包发送到预设的终端上;
第一控制单元,用于控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;
第二控制单元,用于在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;
第三控制单元,用于控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;
执行单元,用于根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
上述的装置,可选的,所述发送单元,包括:
第一确定子单元,用于确定所述应用安装包所属的应用发布渠道;
第二确定子单元,用于确定所述应用发布渠道对应的终端集合;所述终端集合中包含各个预设的候选终端;
选取子单元,用于在各个所述候选终端中选取出处于空闲状态的终端;
发送子单元,用于将所述应用安装包发送到所述终端上。
一种存储介质,所述存储介质包括存储指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如上述的应用测试方法。
一种电子设备,包括存储器,以及一个或者一个以上的指令,其中一个或一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如上述的应用测试方法。
基于上述本发明实施提供的一种应用测试方法及装置、存储介质及电子设备,该方法包括:响应于应用测试指令,获取所述应用测试指令对应的应用安装包;将所述应用安装包发送到预设的终端上;控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。应用本发明实施例提供的方法,电子设备能够将应用安装包发到终端上,然后控制终端对应用安装包进行不同环节的测试,获得全面的测试结果,且自动控制终端对应用安装包进行安装、测试和卸载,能够提高了对应用安装包的测试效率,节约了人力成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明提供的一种应用测试方法的方法流程图;
图2为本发明提供的一种将应用安装包发送到终端的过程的流程图;
图3为本发明提供的一种应用测试装置的结构示意图;
图4为本发明提供的一种电子设备的结构示意图;
图5为本发明提供的一种应用测试流程示意图;
图6为本发明提供的一种获取安装包的过程的流程图;
图7为本发明提供的一种与终端建立连接的过程的流程图;
图8为本发明提供的又一种应用测试流程示意图;
图9为本发明提供的一种对应用安装包进行安装测试的过程的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端中还存在另外的相同要素。
本发明实施例提供了一种应用测试方法,该方法可以应用于电子设备,所述方法的方法流程图如图1所示,具体包括:
S101:响应于应用测试指令,获取所述应用测试指令对应的应用安装包。
在本实施例中,应用测试指令可以是技术人员存在应用程序测试需求的情况下触发的指令,具体的,技术人员可以点击预设的测试控件或者预设的快捷键触发应用测试指令;应用测试指令也可以是一些测试程序在运行过程中自动触发的,例如,到达预设的测试时间点时,自动触发应用测试指令。
可选的,应用安装包可以是各类应用程序的安装包,例如,可以是视频类应用程序的安装包、购物类应用程序的安装包、社交类应用程序的安装包。
在一些实施例中,应用安装包可以通过集成工具jenkins结合分布式版本控制系统git生成。
S102:将所述应用安装包发送到预设的终端上。
在本实施例中,终端可以是手机、平板、服务器或智能可穿戴终端等,电子设备可以与终端建立通信连接,该通信连接可以是各类有线连接或无线连接,具体可以是安卓调试桥(Android Debug Bridge,adb)远程连接,建立好通信连接后,可以通过该通信连接将应用安装包发往终端上。
S103:控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果。
在本实施例中,对应用安装包进行安装测试的方式可以是模拟应用安装包在安装过程中可能出现的各种场景,然后获得该场景下应用安装包的安装状态。
其中,电子设备可以通过adb远程连接控制终端对接收到的应用安装包进行安装,并在终端安装应用安装包的过程中,对应用安装包进行测试,获得应用安装包的安装测试结果,例如,电子设备可以应用安装函数封装‘adb install apk_path’命令,apk_path为应用安装包路径,该命令用于控制终端安装该应用安装包,可以将封装好的命令通过adb远程连接发往终端。
在一些可实现的实施例中,可以向终端发送第一控制指令,以控制终端对接收到的应用安装包进行安装,并在终端安装应用安装包的过程中,对应用安装包进行测试,获得应用安装包的安装测试结果,第一控制指令用于指示终端对接收到的应用安装包进行安装,并在终端安装应用安装包的过程中,对应用安装包进行测试,获得应用安装包的安装测试结果。
S104:在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果。
在本实施例中,对应用程序进行运行功能测试可以是测试应用程序是否能正常启动、检测应用程序的启动时间、检测应用程序占用内存、检测应用程序占用CPU、检测重启终端能否正常启动、应用启动验证和页面转跳验证等其中一种或多种。
其中,电子设备可以通过adb远程连接控制终端对应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果。
在一些可实现的实施例中,可以向终端发送第二控制指令,以控制终端对应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果,第二控制指令可以用于指示终端对应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果。
S105:控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果。
在本实施例中,卸载残留验证可以是检测是否完全删除该应用程序的安装文件夹。
其中,电子设备可以通过adb远程连接控制所述终端对应用程序进行卸载,并在终端对应用程序卸载完成后,执行针对应用程序的卸载残留验证,获得卸载残留验证结果,例如,应用卸载函数封装‘adb uninstall apk_path’命令,apk_path为应用安装包路径,该命令用于控制终端卸载应用程序,可以将封装好的命令通过adb远程连接发往终端。
一些可实现的实施例中,可以向终端发送第三控制指令,以控制终端对应用程序进行卸载,并在终端对应用程序卸载完成后,执行针对应用程序的卸载残留验证,获得卸载残留验证结果,第三控制指令可以用于指示终端对应用程序进行卸载,并在终端对应用程序卸载完成后,执行针对应用程序的卸载残留验证,获得卸载残留验证结果。
S106:根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
在本实施例中,可以根据安装功能测试结果、运行功能测试结果以及卸载残留验证结果组成应用安装包的测试结果,可以根据应用安装包的测试结果生成分析报告,并在预设的显示界面显示该分析报告。
应用本发明实施例提供的方法,电子设备能够将应用安装包发到终端上,然后控制终端对应用安装包进行不同环节的测试,获得全面的测试结果,且自动控制终端对应用安装包进行安装、测试和卸载,能够提高了对应用安装包的测试效率,节约了人力成本。
在本发明提供的一实施例中,基于上述的实施过程,可选的,还包括:
当检测到所述终端在对所述应用安装包的安装过程中产生的交互事件时,调用所述交互事件对应的处理函数对所述交互事件进行处理,所述交互事件包括弹窗事件和密码输入事件中的至少一种。
在本实施例中,在检测到弹窗事件时,可以调用预设的点击页面坐标函数封装点击命令,将点击命令发到终端中,以完成对弹窗的点击;点击命令中包含弹窗的坐标点,该点击命令可以为‘adb shell inputtap x y’命令,其中,x为终端显示区域的横坐标,y为终端显示区域的纵坐标点。
在检测到密码输入事件时,可以调用预设的页面文本输入函数封装密码输入指令,将密码输入指令发到终端中,以完成密码的输入;密码输入命令可以为‘adb shellinput text“text”’命令,其中,“text”为密码文本。
在本发明提供的一实施例中,基于上述的实施过程,可选的,对所述应用装包进行安装测试,获得所述应用安装包的安装功能测试结果,包括:
控制所述终端处于预设的安装场景,并检测所述应用安装包在所述终端处于所述安装场景的情况下的安装状态;所述安装场景包括所述应用安装包的安装进程中断、终端剩余空间小于所述应用安装包所需安装空间和终端网络关闭中的至少一种;
根据所述安装状态获得所述应用安装包的安装功能测试结果。
在本实施例中,控制所述终端中的所述应用安装包的安装进程中断的一种可实现方式是向终端发送删除进程指令,以指示终端删除应用安装包的安装进程;当应用程序安装包的安装进程中断时,可以检测应用安装包是否导致终端异常,获得安装状态。
控制终端剩余空间小于应用安装包所需安装空间的一种可实现方式是,检测终端当前的第一剩余空间,在第一剩余空间未小于应用安装包所需安装空间的情况下,在执行服务上生成目标文件,将目标文件传输到终端上,使得终端剩余空间小于应用安装包所需安装空间,目标文件的大小可以根据第一剩余空间以及应用安装包所需安装空间确定;终端剩余空间小于应用安装包所需安装空间时,可以检测终端是否存应用装包触发的安装空间不足提示信息,获得安装状态。
控制终端网络关闭的一种可实现方式是,通过预设的测试工具控制终端的网络关闭;另一种可实现方式是,向终端发送网络关闭指令,以控制终端关闭网络;控制终端关闭网络后,可以检测应用安装包是否正常安装,获得安装状态。
在本发明提供的一实施例中,基于上述的实施过程,可选的,所述控制所述终端对接收到的所述应用安装包进行安装之前,还包括:
控制所述终端安装所述应用安装包对应的历史版本应用安装包。
在本实施例中,可以确定应用安装包对应的待测试版本号,确定待测试版本号的历史版本号,根据历史版本号获得历史版本应用安装包,然后将历史版本应用安装包发到终端上,使得终端安装该历史版本应用安装包,该历史版本应用安装包可以是应用安装包的前N版本的安装包,N为正整数;在终端对历史版本应用安装包安装完成后,控制终端启动安装应用安装包的流程,以检测是否应用安装包是否能够正常安装,即,能够实现版本升级。
在本发明提供的一实施例中,基于上述的实施过程,可选的,所述获取所述应用测试指令对应的应用安装包,包括:
获取所述应用测试指令中包含的待测试版本号;
根据所述待测试版本号遍历预设的文件夹,以获得所述应用测试指令对应的应用安装包。
在本实施例中,可以对应用测试指令进行解析,获得应用测试指令中的指令信息,从指令信息中获取待测试版本号。
可选的,文件夹中可以包含多个安装包文件,通过待测试版本号遍历文件夹,可以获得文件名与待测试版本号一致的安装包,将该文件名与待测试版本号一致的安装包作为应用测试指令对应的应用安装包。
在一些实施例中,在获取到待测试版本号后,还可以确定待测试版本号对应的下载链接,根据下载链接下载应用测试指令对应的应用安装包。
在本发明提供的一实施例中,基于上述的实施过程,可选的,所述将所述应用安装包发送到预设的终端上,如图2所示,具体包括:
S201:确定所述应用安装包所属的应用发布渠道。
在本实施例中,应用发布渠道可以是发布该应用安装包的应用市场,例如,可以是终端厂商A的应用市场。
S202:确定所述应用发布渠道对应的终端集合;所述终端集合中包含各个预设的候选终端;
可选的,应用发布渠道对应的终端集合中的候选终端,即该应用发布渠道所属的厂商的终端。
S203:在各个所述候选终端中选取出处于空闲状态的终端。
其中,检测各个候选终端是否处于空闲状态,在各个候选终端中选取出处于空闲状态的终端。
S204:将所述应用安装包发送到所述终端上。
在本实施例中,可以将应用安装包发送到各个候选终端中处于空闲状态的终端上。
与图1所述的方法相对应,本发明实施例还提供了一种应用测试装置,用于对图1中方法的具体实现,本发明实施例提供的应用测试装置可以应用于电子设备中,其结构示意图如图3所示,具体包括:
获取单元301,用于响应应用测试指令,获取所述应用测试指令对应的应用安装包;
发送单元302,用于将所述应用安装包发送到预设的终端上;
第一控制单元303,用于控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;
第二控制单元304,用于在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;
第三控制单元305,用于控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;
执行单元306,用于根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
在本发明提供的一实施例中,基于上述的方案,可选的,所述发送单元302,包括:
第一确定子单元,用于确定所述应用安装包所属的应用发布渠道;
第二确定子单元,用于确定所述应用发布渠道对应的终端集合;所述终端集合中包含各个预设的候选终端;
选取子单元,用于在各个所述候选终端中选取出处于空闲状态的终端;
发送子单元,用于将所述应用安装包发送到所述终端上。
在本发明提供的一实施例中,基于上述的方案,可选的,所述应用测试装置还包括:
检测单元,用于当检测到所述终端在对所述应用安装包的安装过程中产生的交互事件时,调用所述交互事件对应的处理函数对所述交互事件进行处理,所述交互事件包括弹窗事件和密码输入事件中的至少一种。
在本发明提供的一实施例中,基于上述的方案,可选的,所述第一控制单元,包括:
控制子单元,用于控制所述终端处于预设的安装场景,并检测所述应用安装包在所述终端处于所述安装场景的情况下的安装状态;所述安装场景包括所述应用安装包的安装进程中断、终端剩余空间小于所述应用安装包所需安装空间和终端网络关闭中的至少一种;
执行子单元,用于根据所述安装状态获得所述应用安装包的安装功能测试结果。
在本发明提供的一实施例中,基于上述的方案,可选的,所述应用测试装置,还包括:
第四控制单元,用于控制所述终端安装所述应用安装包对应的历史版本应用安装包。
在本发明提供的一实施例中,基于上述的方案,可选的,所述获取单元,包括:
获取子单元,用于获取所述应用测试指令中包含的待测试版本号;
查询子单元,用于根据所述待测试版本号遍历预设的文件夹,以获得所述应用测试指令对应的应用安装包。
上述本发明实施例公开的应用测试装置中的各个单元和模块具体的原理和执行过程,与上述本发明实施例公开的应用测试方法相同,可参见上述本发明实施例提供的应用测试方法中相应的部分,这里不再进行赘述。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述应用测试方法。
本发明实施例还提供了一种电子设备,其结构示意图如图4所示,具体包括存储器401,以及一个或者一个以上的指令402,其中一个或者一个以上指令402存储于存储器401中,且经配置以由一个或者一个以上处理器403执行所述一个或者一个以上指令402进行以下操作:
响应于应用测试指令,获取所述应用测试指令对应的应用安装包;
将所述应用安装包发送到预设的终端上;
控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;
在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;
控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;
根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
目前,互联网android应用在每个版本上线之前都需要进行版本安装、覆盖安装、卸载等场景的测试。每次版本升级都需要人工重复这些测试来保证Android应用安装、卸载、覆盖安装功能的正常。
基于此,参见图5,为本发明实施例提供的一种应用测试流程示意图,在本发明实施例提供的方案中,首先获取安装包,然后进行终端准备,具体可以与终端建立连接,将安装包发送到该终端上,控制终端安装该安装包,并对应用进行验证,再对应用进行卸载,最后进行卸载残留验证。
在本实施例中,获取安装包的过程,可以如图6所示,可以用jenkins+git来生成应用安装包,打包完成后生成一个下载链接;遍历文件夹,获取当前测试应用版本号倒序最近5个历史版本的应用安装包;获取当前测试应用版本号倒序最近1个历史版本不同渠道的安装包。
在本实施例中,与终端建立连接的过程,如图7所示,可以判断用户是否指定设备id,若是,则与该设备id对应的设备建立连接,若否,则获取空闲设备列表,从列表中选取设备并建立连接。
在本发明提供的一实施例中,如图8所示,提供了又一种应用测试流程示意图,可以先对终端中的应用进行卸载,然后进行历史版本应用的安装,启动时间记录,进行测试版本覆盖安装,测试版本安装完成之后,记录测试版本启动时间,记录测试版本占用内存,记录测试版本占用CPU,进行启动验证,页面转跳验证,最后,对应用进行卸载,然后进行卸载残留检查。
其中,可以进行启动时间对比,具体可以是在应用安装成功后,使用‘adb shellam start-W packageName’获取各个版本应用程序的启动时间,然后进行启动时间对比,获得对比结果。
可选的,可以使用UI自动测试工具来实现首页加载和页面跳转验证。
具体的,每一个安装包安装成功后,启动应用使用‘adb shell dumpsys meminfopackageName’命令获取各个版本的内存占用情况。
在本实施例中,可以使用‘adb shell ls path’命令进行卸载残留检查,其中path为需要检查的文件路径。
在本发明提供的一实施例中,在对应用安装包进行安装测试的过程中,可以对应用安装包进行安装测试,具体如图9所示,可以先进行异常场景准备,在安装应用安装包的过程中,模拟异常,然后进行应用安装情况检查,最后重新安装应用,并进行应用启动检查。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者网络终端等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种应用测试方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种应用测试方法,其特征在于,包括:
响应于应用测试指令,获取所述应用测试指令对应的应用安装包;
将所述应用安装包发送到预设的终端上;
控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;
在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;
控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;
根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
2.根据权利要求1所述的方法,其特征在于,还包括:
当检测到所述终端在对所述应用安装包的安装过程中产生的交互事件时,调用所述交互事件对应的处理函数对所述交互事件进行处理,所述交互事件包括弹窗事件和密码输入事件中的至少一种。
3.根据权利要求1所述的方法,其特征在于,所述对所述应用装包进行安装测试,获得所述应用安装包的安装功能测试结果,包括:
控制所述终端处于预设的安装场景,并检测所述应用安装包在所述终端处于所述安装场景的情况下的安装状态;所述安装场景包括所述应用安装包的安装进程中断、终端剩余空间小于所述应用安装包所需安装空间和终端网络关闭中的至少一种;
根据所述安装状态获得所述应用安装包的安装功能测试结果。
4.根据权利要求1所述的方法,其特征在于,所述控制所述终端对接收到的所述应用安装包进行安装之前,还包括:
控制所述终端安装所述应用安装包对应的历史版本应用安装包。
5.根据权利要求1所述的方法,其特征在于,所述获取所述应用测试指令对应的应用安装包,包括:
获取所述应用测试指令中包含的待测试版本号;
根据所述待测试版本号遍历预设的文件夹,以获得所述应用测试指令对应的应用安装包。
6.根据权利要求1所述的方法,其特征在于,所述将所述应用安装包发送到预设的终端上,包括:
确定所述应用安装包所属的应用发布渠道;
确定所述应用发布渠道对应的终端集合;所述终端集合中包含各个预设的候选终端;
在各个所述候选终端中选取出处于空闲状态的终端;
将所述应用安装包发送到所述终端上。
7.一种应用测试装置,其特征在于,包括:
获取单元,用于响应应用测试指令,获取所述应用测试指令对应的应用安装包;
发送单元,用于将所述应用安装包发送到预设的终端上;
第一控制单元,用于控制所述终端对接收到的所述应用安装包进行安装,并在所述终端安装所述应用安装包的过程中,对所述应用安装包进行安装测试,获得所述应用安装包的安装功能测试结果;
第二控制单元,用于在检测到所述终端对所述应用安装包安装完成的情况下,控制所述终端对所述应用安装包安装得到的应用程序进行运行功能测试,获得运行功能测试结果;
第三控制单元,用于控制所述终端对所述应用程序进行卸载,并在所述终端对所述应用程序卸载完成后,执行针对所述应用程序的卸载残留验证,获得卸载残留验证结果;
执行单元,用于根据所述安装功能测试结果、所述运行功能测试结果以及所述卸载残留验证结果,获得所述应用安装包的测试结果。
8.根据权利要求7所述的装置,其特征在于,所述发送单元,包括:
第一确定子单元,用于确定所述应用安装包所属的应用发布渠道;
第二确定子单元,用于确定所述应用发布渠道对应的终端集合;所述终端集合中包含各个预设的候选终端;
选取子单元,用于在各个所述候选终端中选取出处于空闲状态的终端;
发送子单元,用于将所述应用安装包发送到所述终端上。
9.一种存储介质,其特征在于,所述存储介质包括存储指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如权利要求1~6任意一项所述的应用测试方法。
10.一种电子设备,其特征在于,包括存储器,以及一个或者一个以上的指令,其中一个或一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如权利要求1~6任意一项所述的应用测试方法。
CN202210674289.XA 2022-06-15 2022-06-15 应用测试方法及装置、存储介质及电子设备 Pending CN114880244A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210674289.XA CN114880244A (zh) 2022-06-15 2022-06-15 应用测试方法及装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210674289.XA CN114880244A (zh) 2022-06-15 2022-06-15 应用测试方法及装置、存储介质及电子设备

Publications (1)

Publication Number Publication Date
CN114880244A true CN114880244A (zh) 2022-08-09

Family

ID=82680847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210674289.XA Pending CN114880244A (zh) 2022-06-15 2022-06-15 应用测试方法及装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN114880244A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116244194A (zh) * 2023-02-09 2023-06-09 湖南快乐阳光互动娱乐传媒有限公司 应用程序的页面测试方法及装置、存储介质及电子设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116244194A (zh) * 2023-02-09 2023-06-09 湖南快乐阳光互动娱乐传媒有限公司 应用程序的页面测试方法及装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN106598835B (zh) 一种应用的测试方法及装置、系统
CN109902005B (zh) 一种自动化测试的方法和系统
CN109885480B (zh) 一种基于调试桥的自动化界面兼容性测试方法及装置
CN105302722B (zh) Cts自动测试方法及装置
EP2684383A1 (en) Systems and methods for testing content of mobile communication devices
CN106648762B (zh) 一种搭建开发环境的方法及装置
CN107391362A (zh) 应用测试方法、移动终端及存储介质
CN108650507B (zh) 终端设备的测试方法、装置、终端设备和存储介质
CN112214405A (zh) 一种软件测试方法、装置、电子设备和可读存储介质
CN114880244A (zh) 应用测试方法及装置、存储介质及电子设备
CN109032705B (zh) 应用程序的执行方法、装置、电子设备及可读存储介质
CN111782516A (zh) 一种代码测试方法及装置、存储介质
CN109032617B (zh) 一种自动删除安装包的控制方法及控制装置
CN110968510A (zh) Ssd自动化在线升级固件测试方法、装置及计算机设备
CN110704311A (zh) 一种应用程序测试方法、装置、电子设备及可读存储介质
CN115604307A (zh) 升级日志的处理方法、装置、终端设备及计算机介质
CN112596751B (zh) 应用程序安装包的编译方法、终端、服务器及存储介质
CN114356346A (zh) 应用程序部署方法、装置、存储介质以及电子设备
CN110362320B (zh) 一种应用开发平台的命令实现方法和装置
CN109428936B (zh) App的升级方法、装置、系统、电子设备及存储介质
US11714744B2 (en) System and method for diagnosing a computing device in safe mode
CN108881585B (zh) 内置应用程序测试处理方法、装置、电子设备及存储介质
CN111638888B (zh) 一种安卓应用程序包apk的安装方法以及第一终端
CN114741325B (zh) 一种应用系统测试用的测试脚本的录制方法以及装置
CN116225966B (zh) 一种基于智能手表的应用评估方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination