一种对应用程序进行测试的方法及装置的制造方法_3

文档序号:9288375阅读:来源:国知局
作函数intpressMove(1,0, 1)。根据手指抬起操作所 需要的操作参数(2, 0),调用操作函数intpressMove(2, 0)。实现对L型滑动操作的模拟, 得到操作指令L1。
[0095] 步骤206 :根据获取的操作类型,随机生成该操作类型对应的操作所需要的操作 参数,根据该操作参数,模拟该操作类型对应的操作得到操作指令;
[0096] 具体地,根据获取的操作类型,从事先配置的操作类型库中,获取该操作类型对应 的操作函数,从获取的操作函数中获取该操作类型对应的操作所需要的操作参数的名称和 数据类型,根据获取的操作参数的名称和数据类型,随机生成该操作类型对应的操作所需 要的操作参数,根据该操作参数,调用该操作类型对应的操作函数,对该操作类型对应的操 作进行模拟,得到操作指令。
[0097] 例如,假设获取的操作类型为单击的操作类型。根据获取的单击操作的操作类型, 从事先配置的操作类型库中,获取单击操作对应的操作函数inttouch(intX,inty),从 获取的操作函数inttouch(intx,inty)中获取单击操作所需要的操作参数的名称为单 击位置点的横坐标和纵坐标以及数据类型为整型,然后随机生成单击操作所需要的操作参 数(1,1),根据该操作参数(1,1),调用单击操作对应的操作函数inttouch(1,1),对单击 操作进行模拟,得到操作指令L1。
[0098] 其中,由于每个移动终端的触摸屏支持的信号类型可能不同,所以得到操作指令 之后,还需要通过如下步骤207-209的操作来获取移动终端的触摸屏支持的信号类型。
[0099] 步骤207:获取移动终端的触摸屏对应的接口文件;
[0100] 其中,移动终端包括多个部件,如触摸屏、键盘或录音设备等,在此就不一一举例。 移动终端包括的每个部件分别对应一个接口文件,部件对应的接口文件中包括该部件的部 件名称。对于不同操作系统的移动终端,部件的接口文件的存放目录不同。对于操作系统相 同的移动终端,移动终端包括的所有接口文件的存放目录相同。例如,对于操作系统为安卓 系统的所有移动终端,移动终端包括的所有部件的接口文件的存放目录均为/dev/input/。
[0101] 本步骤具体为,获取移动终端的操作系统的类型,根据该操作系统的类型,确定该 移动终端存放接口文件的文件目录。从移动终端存放接口文件的文件目录下,获取该移动 终端包括的每个部件的接口文件。从每个部件的接口文件中,分别获取每个部件的部件名 称。从获取的每个部件的部件名称中,获取包含触摸屏对应的预设关键字的部件名称。将 获取的部件名称对应的接口文件确定为该移动终端的触摸屏对应的接口文件。
[0102] 其中,触摸屏对应的预设关键字可以为'touch'或'touchscreen'等。
[0103] 例如,假设移动终端的操作系统为安卓系统,触摸屏对应的预设关键字为 'touch'。获取移动终端的操作系统的类型为安卓系统,根据该操作系统的类型为安卓系 统,确定出该移动终端存放接口文件的文件目录为/dev/input/。从移动终端存放接口文 件的文件目录/dev/input/下,获取该移动终端包括的每个部件的接口文件,假设获取到 部件1、2和3的接口文件分别为接口文件F1、F2和F3。从接口文件F1中获取部件1的部 件名称为'keyboard',从接口文件F2中获取部件2的部件名称为'mouse',从接口文件F3 中获取部件3的部件名称为'touchpanel'。从获取的部件1的部件名称'keyboard'、部 件2的部件名称'mouse'以及部件3的部件名称'touchpanel'中,获取包含触摸屏对应 的预设关键字touch'的部件名称,即部件3的部件名称'touchpanel'。将获取的部件名 称'touchpanel'对应的接口文件F3确定为该移动终端的触摸屏对应的接口文件。
[0104] 其中,获取移动终端的触摸屏对应的接口文件的代码,如下所示:
[0105]
[0106] 步骤208 :从获取的接口文件中获取移动终端的触摸屏的配置信息;
[0107] 其中,在现有的多点触摸协议中规定了至少一套信号类型和每套信号类型对应的 标识。每个移动终端生产商从多点触摸协议规定的至少一套信号类型中选择一套信号类 型,作为该移动终端生产商生产的移动终端的触摸屏支持的信号类型,将该套信号类型的 标识添加到触摸屏的配置信息中,并将配置信息存储在移动终端的接口文件中。
[0108] 例如,从获取的接口文件F3中获取移动终端的触摸屏的配置信息P。
[0109] 步骤209 :根据获取的配置信息,获取移动终端的触摸屏支持的信号类型;
[0110] 具体地,从获取的配置信息中,获取移动终端的触摸屏支持的信号类型的标识。根 据获取的标识,从多点触摸协议中获取移动终端的触摸屏支持的信号类型。
[0111] 例如,假设获取的配置信息P中包括的信号类型的标识为S1,多点触摸协议规定 了第一套、第二套和第三套信号类型以及第一套、第二套和第三套信号类型的标识分别为 SO、S1和S2。从获取的配置信息P中,获取移动终端的触摸屏支持的信号类型的标识S1。 根据获取的标识S1,从多点触摸协议中获取移动终端的触摸屏支持的信号类型为第二套信 号类型。
[0112] 其中,获取移动终端的触摸屏支持的信号类型的代码,如下所示:
[0113]
[0114] 步骤210 :根据移动终端的触摸屏支持的信号类型,对操作指令进行转换,得到测 试信号;
[0115] 具体地,根据移动终端的触摸屏支持的信号类型,将操作指令的格式转换为触摸 屏支持的信号格式,得到测试信号。
[0116] 例如,根据移动终端的触摸屏支持的信号类型第二套信号类型,将操作指令L1的 格式转换为触摸屏支持的信号格式,得到测试信号C1。
[0117] 其中,得到测试信号之后,根据如下步骤211和212对待测试的应用程序进行测 试。
[0118] 步骤211 :将测试信号输入给待测试的应用程序,使待测试的应用程序根据测试 信号进行执行得到执行结果;
[0119] 其中,将测试信号写入触摸屏的接口文件中,输入系统从触摸屏的接口文件中读 取测试信号,然后输入系统再将测试信号输入给待测试的应用程序,待测试的应用程序接 收到测试信号后,根据测试信号进行执行并输出执行结果。
[0120] 例如,假设待测试的应用程序为屏幕锁定程序。将测试信号C1写入触摸屏的接口 文件F3中,输入系统从触摸屏的接口文件F3中读取测试信号C1,然后输入系统再将测试信 号C1输入给屏幕锁定程序,屏幕锁定程序接收到测试信号C1后,根据测试信号C1进行执 行,在屏幕锁定的九宫格中输入L形的解锁密码,然后对屏幕进行解锁处理,如果预设密码 为L形的解锁密码,则输出解锁成功的结果。如果预设密码不是L形的解锁密码,则输出解 锁失败的结果。
[0121] 其中,将测试信号写入触摸屏的接口文件中的代码,如下所示:
[0122]
[0123] 其中,在对应用程序进行测试时,需要在预设时间内向应用程序输入大量的用户 操作指令,所以需要在预设时间内,重复上述步骤201-211的操作生成大量的测试信号,并 使待测试的应用程序根据生成的大量的测试信号进行执行得到执行结果。
[0124] 步骤212 :根据运行结果对待测试的应用程序的稳定性进行判断。
[0125] 其中,待测试的应用程序在预设时间内根据大量的测试信号进行执行得到执行结 果,如果得到的执行结果均正确,则判断出待测试的应用程序的稳定性较高。如果得到的执 行结果中存在错误的执行结果,则判断出待测试的应用程序的稳定性较低。
[0126] 例如,假设屏幕锁定程序在预设时间内根据大量的测试信号进行执行得到的执行 结果均正确,则根据判断出屏幕锁定程序的稳定性较高。
[0127] 其中,对于移动终端上安装的其他每个应用程序,同待测试的应用程序按照本发 明实施例提供的方法对移动终端上安装的其他每个应用程序进行测试。
[0128] 在本发明实施例中,获取操作类型;如果该操作类型为非直线型滑动操作的操作 类型,获取非直线型滑动操作包括的多个基本操作和多个基本操作中的每个基本操作所需 要的操作参数;根据每个基本操作和每个基本操作所需要的操作参数对待测试的应用程序 进行测试。由于获取了非直线型滑动操作包括的多个基本操作和多个基本操作中的每个基 本操作所需要的操作参数,如此利用每个基本操作和每个基本操作所需要的操作参数对待 测试的应用程序进行测试时,考虑了非直线型滑动操作,提高了测试待测试的应用程序的 测试结果的准确性。
[0129] 实施例3
[0130] 参见图3,本发明实施例提供了一种对应用程序进行测试的装置,包括:
[0131] 第一获取模块301,用于获取操作类型;
[0132] 第二获取模块302,用于如果该操作类型为非直线型滑动操作的操作类型,获取非 直线型滑动操作包括的多个基本操作和多个基本操作中的每个基本操作所需要的操作参 数;
[0133] 测试模块303,用于根据每个基本操作和每个基本操作所需要的操作参数对待测 试的应用程序进行测试。
[0134] 其中,第二获取模块302包括:
[0135] 获取单元,用于根据该操作类型,从操作类型与基本操作的对应关系中获取非直 线型滑动操作包括的多个基本操作;
[0136] 第一生成单元,用于随机生成多个基本操作中的每个基本操作所需要的操作参 数。
[0137] 其中,多个基本操作包括一个手指按下操作、一个手指抬起操作和至少一个手指 滑动操作,手指按下操作的操作参数为一起点,手指抬起操作的操作参数为一终点,手指滑 动操作的操作参数至少包括一中间拐点和到达时间。
[0138] 其中,测试模块303包括:
[0139] 模拟单元,用于根据每个基本操作所需要的操作参数,模拟非直线型滑动操作得 到操作指令;
[0140] 输入单元,用于将操作指令输入给待
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1