【技术实现步骤摘要】
一种应用程序的测试方法及装置
本申请涉及通信
,尤其涉及一种应用程序的测试方法及装置。
技术介绍
在一款移动应用的正式发布之前,通常需要对该移动应用进行诸如CPU、内存、流量、启动耗时、电量和电流等性能测试,以验证该移动应用是否符合上线质量要求。由于iOS系统是采用沙盒安全保护策略的封闭系统,从而安装在iOS设备上的应用程序之间是相互独立的,因此增加了对运行在iOS设备上应用的性能测试的测试难度。现有技术,对于iOS设备的应用测试方法主要包括:其一为先对iOS设备进行越狱操作来获取iOS系统的底层权限,再对越狱后的设备上的应用进行应用性能测试;其二为通过建立iOS设备和PC设备之间的数据线连接,再利用特定的程序库来实现PC设备与iOS设备的通信,之后通过PC设备对iOS设备进行应用性能测试。然而,这两种应用测试方法至少存在以下不足:前者由于需要对iOS设备进行越狱操作,测试操作复杂且带来设备安全问题,且不适用于无法进行越狱操作的iOS设备。后者由于在测试过程中需要保持PC和iOS设备的一直处于数据线连接状态,测试过程麻烦且由于数据线连接可能会影响测试数据,且仅支持iOS10.0以上的系统版本的设备。
技术实现思路
本申请提供了一种应用程序的测试方法及装置,可以解决现有技术中至少一种技术问题。一方面,本申请提供了一种应用程序的测试方法,包括:确定待测应用程序,为所述待测应用程序分配统一资源定位符信息;所述待测应用程序为iOS应用程序;向服务器发送携带所述统一资源定位符信息和所述待测应用程序的应用标识的重打包请求,以使所述服务器将所述统一资源定位符信息、动态 ...
【技术保护点】
1.一种应用程序的测试方法,其特征在于,包括:确定待测应用程序,为所述待测应用程序分配统一资源定位符信息;所述待测应用程序为iOS应用程序;向服务器发送携带所述统一资源定位符信息和所述待测应用程序的应用标识的重打包请求,以使所述服务器将所述统一资源定位符信息、动态链接库文件和所述待测应用程序的安装包进行重打包,得到所述待测应用程序对应的目标安装包;所述动态链接库文件包括用于监测性能的监测函数;接收所述服务器发送的所述目标安装包并进行安装;运行安装后的所述待测应用程序,并在所述待测应用程序的应用进程中加载安装后的所述目标安装包中的可执行文件和动态链接库文件;利用加载的动态链接库文件中的监测函数,监测所述可执行文件在运行过程的性能数据;所述性能数据包括至少一项待测应用性能的性能统计信息和对应的时间信息。
【技术特征摘要】
1.一种应用程序的测试方法,其特征在于,包括:确定待测应用程序,为所述待测应用程序分配统一资源定位符信息;所述待测应用程序为iOS应用程序;向服务器发送携带所述统一资源定位符信息和所述待测应用程序的应用标识的重打包请求,以使所述服务器将所述统一资源定位符信息、动态链接库文件和所述待测应用程序的安装包进行重打包,得到所述待测应用程序对应的目标安装包;所述动态链接库文件包括用于监测性能的监测函数;接收所述服务器发送的所述目标安装包并进行安装;运行安装后的所述待测应用程序,并在所述待测应用程序的应用进程中加载安装后的所述目标安装包中的可执行文件和动态链接库文件;利用加载的动态链接库文件中的监测函数,监测所述可执行文件在运行过程的性能数据;所述性能数据包括至少一项待测应用性能的性能统计信息和对应的时间信息。2.根据权利要求1所述的方法,其特征在于,所述监测函数包括钩子函数;相应的,所述利用加载的动态链接库文件中的监测函数,监测所述可执行文件在运行过程的性能数据,包括:利用加载的动态链接库文件中的钩子函数,挂钩所述可执行文件中至少一个用于描述待测应用性能的目标对象;在所述待测应用程序的应用进程中,创建用于监测每个目标对象的监测线程;执行所述监测线程,并监测每个目标对象在所述可执行文件运行的时间段内的性能参数数据;所述性能参数数据包括执行状态数据和/或属性数据;记录每个目标对象的性能参数数据及其对应的时间信息,得到所述性能数据。3.根据权利要求2所述的方法,其特征在于,所述利用加载的动态链接库文件中的钩子函数,挂钩所述可执行文件中至少一个用于描述待测应用性能的目标对象,包括:检测所述待测应用程序的应用类型和/或所述待测应用性能的性能类型;若所述应用类型为基于Unity引擎的iOS游戏应用程序且所述性能类型为帧率,则利用加载的动态链接库文件中相匹配的钩子函数,挂钩所述可执行文件中UnityAppController的repaint函数;若所述应用类型为基于UE4引擎的iOS游戏应用程序且所述性能类型为帧率,则利用加载的动态链接库文件中相匹配的钩子函数,挂钩所述可执行文件中IOSAppDelegate的bIsSuspended属性。4.根据权利要求1所述的方法,其特征在于,所述为所述待测应用程序分配统一资源定位符信息,包括:所述终端上的监测应用程序按照预设规则配置多个不同的统一资源定位符信息并存储在自身配置文件的对应字段中;所述终端上的监测应用程序根据所述待测应用程序的应用类型,为其分配指定的统一资源定位符信息;相应的,所述运行安装后的所述待测应用程序,包括:创建针对所述待测应用的拉起线程,所述拉起线程用于所述监测应用程序拉起所述安装后的所述待测应用程序;响应于所述拉起线程,自动运行安装后的所述待测应用程序。5.根据权利要求1-4任一所述的方法,其特征在于,所述方法还包括:获取通过剪切板回传的所述性能数据;向服务器上传所述性能数据,以使所述服务器根据所述性能数据计算每个待测应用性能的性能测试结果,并按预设规则展示所述性能测试结果。6.一种应用程序的测试方法,其特征在于,包括:接收终端发送的统一资源定位符信息和待测应用程序的应用标识的重打包请求;所述待...
【专利技术属性】
技术研发人员:袁明凯,杨伟,王建行,王枭,罗章龙,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。