安装包应用的测试系统和方法
【技术领域】
[0001]本发明涉及软件测试领域,特别是涉及一种手机安装包应用的测试系统和方法。
【背景技术】
[0002]手机安装包在上线发布之前,需要经过测试以确保安装包的正常使用。传统的测试平台主要有Android Pilot和Smart Robot,其中,Android Pilot实现了脚本的录制和回放,并且可在多台设备上部署,生成测试报告,但需要在个人计算机上安装录制用例客户端,如在手机上按照代理客户端等,需要配置本地测试环境,安全性差;Smart Robot实现了录制脚本和回放脚本,但同样需要在个人计算机上安装录制用例客户端,其安全性差。
【发明内容】
[0003]基于此,有必要针对传统的测试平台需要安装本地客户端其安全性较差的问题,提供一种安全性较高的安装包应用的测试方法和系统。
[0004]一种安装包应用的测试系统,包括PHP页面构建的平台、测试控制器、数据库、配置文件库和测试驱动器,所述测试控制器分别与所述PHP页面构建的平台、数据库、配置文件库和测试驱动器相连,所述PHP页面构建的平台和所述数据库相连;所述配置文件库用于预先存储模拟用户操作逻辑的测试套及测试用例配置文件;所述PHP页面构建的平台用于接收测试任务,并将所述测试任务传送给所述测试控制器,所述测试控制器控制所述测试任务存储在所述数据库中;所述测试控制器用于从所述数据库中读取测试任务,并根据所述测试任务从所述配置文件库中调用预先配置的测试套中的测试用例,并将所述读取的测试任务和调用的测试用例传送给所述测试驱动器;所述测试驱动器用于按照所述测试用例对所述测试任务进行测试。
[0005]在其中一个实施例中,所述测试任务中包括接收者电子邮件地址;所述安装包应用的测试系统还包括:
[0006]通信模块,用于将所述测试任务进行测试所生成的测试结果发送到所述接收者电子邮件地址。
[0007]在其中一个实施例中,所述测试驱动器还用于在所述PHP页面构建的平台接收测试任务,并将所述测试任务存储在数据库中之前,模拟安装应用程序包,预先模拟用户操作逻辑并生成测试套和测试用例,并将所述生成的测试套和测试用例通过所述测试控制器存储到所述配置文件库中。
[0008]在其中一个实施例中,所述测试用例包括操作名称和参数,或者所述测试用例包括操作方法名称,所述操作方法中封装操作名称和参数;所述测试任务中包括被测试应用程序包名称以及测试套名称和运行设备标识两者中至少一种。
[0009]在其中一个实施例中,所述测试控制器还用于对所述数据库中的测试任务进行标记,当所述测试任务标记为第一标识时,表示所述测试任务执行成功,当所述测试任务标记为第二标识时,表示所述测试任务需再执行。
[0010]一种安装包应用的测试方法,包括以下步骤:
[0011]通过PHP页面构建的平台接收测试任务,并将所述测试任务传送给测试控制器,所述测试控制器将所述测试任务存储在数据库中;
[0012]通过测试控制器读取所述数据库中的测试任务,并根据所述测试任务调用预先模拟配置的测试套中的测试用例,并将所述读取的测试任务和调用的测试用例传送给测试驱动器;
[0013]通过所述测试驱动器按照所述测试用例对所述测试任务进行测试。
[0014]在其中一个实施例中,所述测试任务中包括接收者电子邮件地址;
[0015]在通过测试驱动器按照所述测试用例对所述测试任务进行测试的步骤之后,还包括:
[0016]将所述测试任务进行测试所生成的测试结果发送到所述接收者电子邮件地址。
[0017]在其中一个实施例中,在所述通过PHP页面构建的平台接收测试任务,并将所述测试任务传送给测试控制器,所述测试控制器将所述测试任务存储在数据库中的步骤之前,还包括:
[0018]模拟安装应用程序包,预先模拟用户操作逻辑并生成测试套和测试用例。
[0019]在其中一个实施例中,所述测试用例包括操作名称和参数,或者所述测试用例包括操作方法名称,所述操作方法中封装操作名称和参数;所述测试任务中包括被测试应用程序包名称以及测试套名称和运行设备标识两者中至少一种。
[0020]在其中一个实施例中,所述安装包应用的测试方法还包括:
[0021]对所述测试任务进行标记,当所述测试任务标记为第一标识时,表示所述测试任务执行成功,当所述测试任务标记为第二标识时,表示所述测试任务需再执行。
[0022]上述安装包应用的测试系统和方法,通过PHP页面构建的平台接收测试任务,配置文件库中存储测试套及测试用例,不需在本地配置测试环境,所有的测试环境只需放在服务器中,不需额外增加对本地的安全检测,测试更加安全,且降低了安全检测成本。
【附图说明】
[0023]图1为一个实施例中安装包应用的测试系统的结构示意图;
[0024]图2为一个实施例中安装包应用的测试方法的流程图;
[0025]图3为另一个实施例中安装包应用的测试方法的流程图;
[0026]图4为另一个实施例中安装包应用的测试方法的流程图。
【具体实施方式】
[0027]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0028]图1为一个实施例中安装包应用的测试系统的结构示意图。该安装包应用的测试系统运行于服务器端。该安装包应用的测试系统,包括PHP (Hypertext Preprocessor,超文本预处理器)页面构建的平台110、测试控制器120、数据库130、配置文件库140和测试驱动器150。其中,配置文件库140用于预先存储模拟用户操作逻辑的测试套及测试用例配置文件;PHP页面构建的平台110用于接收测试任务,并将该测试任务传送给测试控制器120,测试控制器120将该测试任务存储在数据库130中;测试控制器120用于从该数据库130中读取测试任务,并根据该测试任务从该配置文件库140中调用预先配置的测试套中的测试用例,并将该读取的测试任务和调用的测试用例传送给该测试驱动器150 ;测试驱动器150用于按照该测试用例对该测试任务进行测试。测试控制器120分别与PHP页面构建的平台110、数据库130、配置文件库140和测试驱动器150相连,PHP页面构建的平台110和数据库130相连。
[0029]本实施例中,PHP页面构建的平台110可为采用PHP编写的web端。测试驱动器150 可为 MonkeyRunner Driver。MonkeyRunner Driver 工具提供了一个 APKApplicat1nProgramming Interface,应用程序编程接口),使用该API写出的程序可以在Android代码之外控制Android设备和模拟器。
[0030]上述安装包应用的测试系统,通过PHP页面构建的平台接收测试任务,配置文件库中存储测试套及测试用例,不需在本地配置测试环境,所有的测试环境只需放在服务器中,不需额外增加对本地的安全检测,测试更加安全,且降低了安全检测成本。
[0031]在一个实施例中,测试驱动器150还用于在PHP页面构建的平台接收测试任务,并将所述测试任务存储在数据库中之前还包括,模拟安装应用程序包,预先模拟用户操作逻辑并生成测试套和测试用例,并将生成的测试套和测试用例通过测试控制器120存储到配置文件库140中,以便后续测试控制器120读取测试任务后从配置文件库140中调用该预先模拟用户操作逻辑生成的测试套和测试用例。
[0032]具体的,测试驱动器150模拟安装应用程序包时,有相同的界面和相同的按钮,点击之后会跳转到相同的位置,但不会产生真实的数据,如此记录用户在安装应用程序包的操作流程,形成测试用例。例如操作