一种测试框架实现方法和装置的制造方法

文档序号:9471293阅读:296来源:国知局
一种测试框架实现方法和装置的制造方法
【技术领域】
[0001]本发明涉及互联网测试技术领域,具体涉及一种测试框架实现方法和装置。
【背景技术】
[0002]现有技术中,对智能终端上的应用的测试框架大多应用安卓系统的Instrumentat1n的一个对象,这个对象造成的限制是:在待测应用启动时,该对象和该待测应用直接绑定,通过这种绑定来实现对待测应用的相关内容的操作,使得该操作仅仅局限于待测应用本身,如果待测应用中存在与其他应用发生交互的执行逻辑,则现有技术中的这种测试框架无法测试对该类执行逻辑进行测试。
[0003]然而,随着互联网技术的不断发展,越来越多的应用具有交互功能,因此,如何实现跨应用的测试框架,是目前亟待解决的问题。

【发明内容】

[0004]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种测试框架实现方法和装置。
[0005]依据本发明的一个方面,提供了一种测试框架实现方法,该方法包括:
[0006]将代理程序注入到测试用智能终端的安卓操作系统中;
[0007]在所述智能终端上运行待测应用,并由封装了测试逻辑的测试程序对所述待测应用进行测试;
[0008]所述测试程序通过调用所述代理程序获取所述应用的相关内容,依据该相关内容对所述应用进行测试;
[0009]提供扩展接口,使得用户能够通过该扩展接口对所述测试程序的测试逻辑进行扩展。
[0010]可选地,该方法进一步包括:
[0011]当所述应用的运行逻辑与另一个应用发生关联时,所述测试程序通过调用所述代理程序启动该另一个应用,并通过调用所述代理程序获取该另一个应用的相关执行结果,以实现对所述应用的与另一个应用发生关联的运行逻辑的测试。
[0012]可选地,所述代理程序包含Hook函数,通过Hook函数获取运行在所述测试用智能终端上的应用的相关内容。
[0013]可选地,所述测试程序通过调用所述代理程序获取所述应用的相关内容,依据该相关内容对所述应用进行测试包括:
[0014]所述测试程序通过调用所述代理程序截获所述应用中的指定文件,验证该指定文件中是否存在指定内容。
[0015]可选地,所述测试程序通过调用所述代理程序获取所述应用的相关内容,依据该相关内容对所述应用进行测试包括:
[0016]所述测试程序通过调用所述代理程序截获所述应用的界面信息,根据该界面信息触发该界面上的控件。
[0017]可选地,所述根据该界面信息触发该界面上的控件包括:
[0018]调用该界面上的控件原生的触发函数来触发该控件;
[0019]或者,
[0020]模拟触发该界面上的控件的行为,向该应用发送该控件的触发指令。
[0021]可选地,该方法进一步包括:
[0022]对所述应用的测试结果进行记录,生成测试报告;
[0023]将测试报告发送给提交测试的用户。
[0024]依据本发明的另一方面,提供了一种测试框架实现装置,该装置包括:
[0025]注入单元,适于将代理程序注入到测试用智能终端的安卓操作系统中;
[0026]测试单元,适于封装测试逻辑,当待测应用在所述智能终端上运行时,根据封装的测试逻辑对所述待测应用进行测试;在测试过程中,通过调用所述代理程序获取所述应用的相关内容,依据该相关内容对所述应用进行测试;
[0027]扩展接口单元,接收用户对所述测试逻辑的扩展指令,根据扩展指令对测试单元中的测试逻辑进行扩展。
[0028]可选地,所述测试单元,进一步适于当所述应用的运行逻辑与另一个应用发生关联时,通过调用所述代理程序启动该另一个应用,并通过调用所述代理程序获取该另一个应用的相关执行结果,以实现对所述应用的与另一个应用发生关联的运行逻辑的测试。
[0029]可选地,所述代理程序包含Hook函数,通过Hook函数获取运行在所述测试用智能终端上的应用的相关内容。
[0030]可选地,所述测试单元,适于通过调用所述代理程序截获所述应用中的指定文件,验证该指定文件中是否存在指定内容。
[0031]可选地,所述测试单元,适于通过调用所述代理程序截获所述应用的界面信息,根据该界面信息触发该界面上的控件。
[0032]可选地,所述测试单元,适于调用该界面上的控件原生的触发函数来触发该控件;或者,适于模拟触发该界面上的控件的行为,向该应用发送该控件的触发指令。
[0033]可选地,该装置进一步包括:
[0034]报告单元,适于对所述应用的测试结果进行记录,生成测试报告;将测试报告发送给提交测试的用户。
[0035]由上述可知,对于运行在智能终端上的待测应用,本发明提供的技术方案通过封装了测试逻辑的测试程序与注入到智能终端的操作系统中的代理程序之间的配合,实现了一种对待测应用进行测试的测试框架;其中,还可以通过扩展接口对测试程序中封装的测试逻辑进行定义。与现有技术相比,本方案通过将代理程序注入到操作系统中的方法,获取到系统级别的操作权限,不仅能够对待测应用进行操作,也能够获取其他非待测应用进行操作,使得本方案提供的测试框架不与待测应用绑定,具有跨进程的特点,不仅能够测试待测应用自身内部的运行逻辑,也可以测试待测应用与其他应用交互的运行逻辑。
[0036]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0037]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0038]图1示出了根据本发明一个实施例的一种测试框架实现方法流程图;
[0039]图2示出了根据本发明一个实施例的一种测试框架实现装置示意图;
[0040]图3示出了根据本发明另一个实施例的一种测试框架实现装置示意图。
【具体实施方式】
[0041]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0042]图1示出了根据本发明一个实施例的一种测试框架实现方法流程图。如图1所示,该方法包括:
[0043]步骤S110,将代理程序注入到测试用智能终端的安卓操作系统中。
[0044]本步骤中,将代理程序注入到操作系统中,使得操作系统在启动的时候不仅要加载操作系统原生的辅助文件,还要加载代理程序的内容,实现代理程序在系统环境下的初始化环境布局,为后续的测试做准备。例如,系统加载代理程序中的Jar包,在加载过程中,该Jar包初始化自身环境,将运行过程中需要用到的文件均摆放在指定的文件路径下。
[0045]步骤S120,在智能终端上运行待测应用,并由封装了测试逻辑的测试程序对待测应用进行测试。
[0046]步骤S130,测试程
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1