CN112525566B - 设备测试方法、装置及电子设备 - Google Patents

设备测试方法、装置及电子设备 Download PDF

Info

Publication number
CN112525566B
CN112525566B CN201910877514.8A CN201910877514A CN112525566B CN 112525566 B CN112525566 B CN 112525566B CN 201910877514 A CN201910877514 A CN 201910877514A CN 112525566 B CN112525566 B CN 112525566B
Authority
CN
China
Prior art keywords
touch screen
handle
writing
node
thread
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.)
Active
Application number
CN201910877514.8A
Other languages
English (en)
Other versions
CN112525566A (zh
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201910877514.8A priority Critical patent/CN112525566B/zh
Publication of CN112525566A publication Critical patent/CN112525566A/zh
Application granted granted Critical
Publication of CN112525566B publication Critical patent/CN112525566B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01MTESTING STATIC OR DYNAMIC BALANCE OF MACHINES OR STRUCTURES; TESTING OF STRUCTURES OR APPARATUS, NOT OTHERWISE PROVIDED FOR
    • G01M99/00Subject matter not provided for in other groups of this subclass
    • G01M99/008Subject matter not provided for in other groups of this subclass by doing functionality tests
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/22Setup operations, e.g. calibration, key configuration or button assignment
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1018Calibration; Key and button assignment

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本申请公开一种设备测试方法、装置及电子设备,其中,方法包括:获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。实现针对更多不同场景同时测试,更加全面对游戏手柄功能进行测试,提高测试效率,并且能够对游戏手柄功能问题进行定位,解决了现有技术中测试效率比较低,不能全面对游戏手柄功能进行测试,以及不能够对游戏手柄功能问题进行定位的技术问题。

Description

设备测试方法、装置及电子设备
技术领域
本申请涉及电子设备测试技术领域,尤其涉及一种设备测试方法、装置及电子设备。
背景技术
通常,手机受限于触幕的尺寸,并且手机游戏的功能键较小,距离较近,导致游戏时操作不便,用户更愿意通过游戏手柄操作游戏,因此,游戏手柄的功能稳定性是直接影响用户对该游戏手柄和适配的手机体验,由此,需要对游戏手柄功能进行测试。
相关技术中,目前游戏手柄厂商提供的游戏手柄测试方法功能单一、测试范围局限,比如测试按键时,当按键正常时,人工按下该按键,屏幕上对应的手柄按键会亮起,测试和校对摇杆时,如果摇杆正常,屏幕上的十字图标会跟随摇杆移动,上述方式只能简单测试手柄按键和摇杆功能是否可用,仅对游戏手柄进行简单的功能测试,测试效率比较低,场景比较单一并不能全面对游戏手柄功能进行测试,以及不能够对游戏手柄功能问题进行定位。
发明内容
本申请提供一种设备测试方法、装置及电子设备,用于解决相关技术中测试效率比较低,场景比较单一并不能全面对游戏手柄功能进行测试,以及不能够对游戏手柄功能问题进行定位的技术问题。
本申请第一方面实施例公开了一种设备测试方法,游戏手柄和触屏设备建立连接,包括以下步骤:
获取所述游戏手柄对应的手柄节点和所述触屏设备对应的触屏节点;
通过各个线程分别同时向所述手柄节点写入多个不同第一预设事件和向所述触屏节点写入多个不同第二预设事件;
根据预设的键位映射信息获取对所述多个不同第一预设事件进行响应生成多个第一响应结果,以及对所述多个不同第二预设事件进行响应生成多个第二响应结果;
根据所述多个第一响应结果和所述多个第二响应结果确定所述游戏手柄,和/或,所述触屏设备的测试结果。
本申请实施例的设备测试方法,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
本申请第二方面实施例公开了一种设备测试装置,包括:获取模块,用于获取所述游戏手柄对应的手柄节点和所述触屏设备对应的触屏节点;第一写入模块,用于通过各个线程同时向所述手柄节点写入多个不同第一预设事件;第二写入模块,用于通过各个线程同时向所述触屏节点写入多个不同第二预设事件;第一生成模块,用于根据预设的键位映射信息获取对所述多个不同第一预设事件进行响应生成多个第一响应结果;第二生成模块,用于根据所述预设的键位映射信息获取对所述多个不同第二预设事件进行响应生成多个第二响应结果;确定模块,用于根据所述多个第一响应结果和所述多个第二响应结果确定所述游戏手柄,和/或,所述触屏设备的测试结果。
本申请实施例的设备测试装置,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了可以针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
本申请第三方面实施例公开了一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如前述第一方面实施例所述的设备测试方法。
本申请第四方面实施例公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前述第一方面实施例所述的设备测试方法。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:
图1为本申请一实施例所提供的设备测试方法的流程示意图;
图2为本申请另一实施例所提供的设备测试方法的流程示意图;
图3为本申请又一实施例所提供的设备测试方法的流程示意图;
图4为本申请一实施例所提供的设备测试装置的结构示意图;
图5为本申请另一实施例所提供的设备测试装置的结构示意图;
图6为本申请又一实施例所提供的设备测试装置的结构示意图。
具体实施方式
下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
下面参考附图描述本申请实施例的设备测试方法、装置及电子设备。
目前游戏手柄厂商提供的游戏手柄测试方法功能单一、测试范围局限,只能简单测试手柄按键和摇杆功能是否可用,仅对游戏手柄进行简单的功能测试,测试效率比较低,场景比较单一并不能全面对游戏手柄功能进行测试,以及不能够对游戏手柄功能问题进行定位。
相关技术中,采用的是游戏悬浮窗方案,该方案会在测试页面上绘制一悬浮窗,然后获取游戏手柄标准键值,通过按键标识查找手柄按键对应的键位映射信息,然后模拟注入事件,该方法需要激活手机,才能进行测试,在游戏手柄适配手机后,如果测试人员测试该方案的稳定性只能依靠手动测试,频繁启动或关闭游戏、频繁断开蓝牙或关闭蓝牙、游戏中靠频繁点击手柄按键或触屏来测试各个场景的稳定性,且手柄测试场景比较多,手动测试浪费人力、也很难保存当前测试出现问题时的有效日志。
针对上述问题,本申请提出了一种设备测试方法,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果,可以针对更多不同场景同时测试,更加全面对游戏手柄功能进行测试,提高测试效率,并且能够对游戏手柄功能问题进行定位。
图1为本申请一实施例所提供的设备测试方法的流程示意图,游戏手柄和触屏设备建立连接,该方法可以应用于智能手机、平板电脑等具有通信功能的电子设备。如图1所示,该设备测试方可以包括以下步骤:
步骤101,获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点。
具体地,本申请通过向游戏手柄对应的手柄节点和触屏设备对应的触屏节点写事件的方法,来模拟游戏手柄和触屏设备的点击等事件,可以有效进行游戏手柄和触屏设备触点的随机事件点击即Monkey点击、滑动操作等压力测试。
可以理解的是,本申请中游戏手柄和触屏设备已经建立连接,也就是说游戏手柄和触屏设备已进行适配,比如通过打通底层协议,数据互通,以原生态接入,两者关系像触屏设备比如手机出厂标配配件,实现了游戏手柄接入触屏设备后,如同人的手指直接触屏操作一样,不需要激活和辅助APP,装上游戏手柄,打开蓝牙,游戏手柄和触屏设备进行直连,直接启动游戏即可。
相对于现有技术,本申请不需要额外绘制悬浮窗,直接对游戏手柄对应的手柄节点和触屏设备对应的触屏节点进行事件的写操作,然后比如input_reader线程直接读取eventHub事件,不需要上传至frameworks层进而至测试APP进行处理,对于事件响应速度更快。
具体地,因为需要向手柄节点和触屏节点写事件,但不同触屏设备上手柄节点和触屏节点对应节点索引不一样,因此需要获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点。
需要说明的是,为了增加压力测试的灵活度,并对多种场景下手柄功能进行保证,对该压力方法进行优化,本申请的设备测试方法可以支持很多设置,举例说明如下:
第一种示例,模拟游戏的打开或关闭,来查看游戏手柄按键响应是否正常,因为游戏手柄连接触屏设备后,并打开游戏后,游戏手柄键位映射功能才生效,即游戏手柄按键按下,对应游戏中有触点按下;游戏手柄按键抬起,对应游戏中有触点抬起,游戏关闭,游戏手柄按键按下或抬起,即使连接触屏设备,触屏设备端也无响应,可以通过设置属性joystick.enable属性来通知输入系统游戏打开或关闭。
第二种示例,模拟游戏手柄与触屏设备的连接与断开连接,来查看游戏手柄按键响应是否正常,比如通过设置属性joystick.connect和joystick.connect_change来达到模拟游戏手柄和触屏设备蓝牙的断开和连接,input_reader调用设备增删函数来增删设备,joystick.connect_change的意义在于只有首次connect置位才进行连接或断开连接。
第三种示例,通过向手柄节点和触屏节点写入事件的延时间隔来控制压力测试的强度,写入事件的延时事件包括:触屏移动的延时时间、触屏点击的延时时间、游戏手柄摇杆移动的延时时间、游戏手柄按键点击的延时时间、游戏手柄一键按下的延时时间和游戏手柄组合按键按下的延时时间等。
第四种示例,通过向手柄节点和触屏节点写入事件的无序和有序性来控制压测的有序或无序测试。
第五种示例,通过是否清除点操作控制压测中间是否模拟一段时间间隔停止事件的写入来清除触屏上所有的遗留点(如正常触屏操作,手指点击或滑动一段时间后所有手指抬起,此时就不会向触屏节点写事件)。
步骤102,通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件。
步骤103,根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果。
具体地,为方便查看压测触点位置,可以打开USB调试中显示触摸操作和指针位置,其中,需要关闭selinux,才有权限向手柄节点和触屏节点写事件。
具体地,开始测试时,记录测试开始时间,测试过程中,开启多线程,每个线程负责一种事件的写入,比如线程1负责向手柄节点写摇杆摆动事件,然后由触屏设备输入系统接收该事件,将摇杆操作映射为触屏点操作,并分发处理,形成页面上的圆形;线程2负责由向触屏节点写按下、多次移动和抬起事件,然后由游戏手柄输入系统接收该事件,并分发处理,形成页面上的线段;线程3负责由向触屏节点写点击事件由游戏手柄输入系统处理事件形成的点;线程4负责向手柄节点写按键事件;线程5负责向手柄节点写一键事件;线程6负责向手柄节点写组合按键事件。
其中,手柄按键事件包含按键索引、down/up信息,开启手柄按键发送事件线程,模拟手柄按键的按下,获取手柄按键索引,需要保证该手柄按键在其他线程中按下后,则再次查找,直到获取到没有按下的按键索引,模拟手柄按键的抬起,发送当前按键抬起事件后,需要清除该按键标志,保证下次可以重新获取已经释放按键的索引,循环进行上述操作,直到收到monkey测试停止命令停止该线程。
其中,如果手柄支持一键功能,可以使用如下方法进行一键压测,开启手柄按键发送事件线程,模拟手柄一键的按下,与手柄按键按下不同的是,手柄一键特定于某个按键,只需固定发出该特定按键的按下事件即可,模拟手柄一键的抬起,循环进行上述操作,直到收到monkey测试停止命令停止该线程。
其中,如果手柄支持组合按键功能,可以使用如下方法进行组合按键功能压测,开启手柄按键发送事件线程,假设组合按键为A+B,模拟组合按键A按下,模拟组合按键B按下,模拟组合按键B抬起,模拟组合按键A抬起,循环进行上述操作,直到收到monkey测试停止命令停止该线程。
需要说明的是,无论多个线程同时运行,只会对手柄节点和触屏节点进行写事件。
其中,预先配置游戏手柄按键显示到触屏设备上触屏点的键位映射信息,也就是说,配置后手柄按键按下,触屏设备上会有键位映射的触点按下。
步骤104,根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。
具体地,根据第一响应结果和第二响应结果确定游戏手柄,和/或,触屏设备的测试结果,也就是说可以仅仅确定触屏设备的测试结果比如检测触屏设备触屏功能的老化情况,也可以仅仅确定游戏手柄的测试结果比如游戏手柄功能,还可以同时确定游戏手柄和触屏设备的测试结果,可以根据实际应用需要进行选择设置。
具体地,如果长时间触点和按键响应无异常,则表示手柄功能正常,如果压测中间触点或按键响应有异常,则自动保存测试开始时间到结束事件的日志便于问题的定位。
其中,模拟触屏和手柄的事件需要符合多点触碰协议中一个事件以SYN_REPORT标志结束,如下表所示:
Figure BDA0002204793500000061
本实施例的设备测试方法,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
本申请实施例提出了另一种设备测试方法,图2为本申请另一实施例所提供的设备测试方法的流程示意图。
如图2所示,该设备测试方法可以包括以下步骤:
步骤201,获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点。
需要说明的是,步骤201与步骤101相同,具体描述参见步骤101的描述,此处不再详述。
步骤202,第一线程向手柄节点写入摇杆摆动事件。
步骤203,根据预设的键位映射信息获取对摇杆摆动事件进行响应生成第一响应结果。
具体地,通过第一线程向手柄节点写入多个离散坐标点信息,根据预设的键位映射信息将多个离散坐标点信息映射为触屏设备的触屏点操作,并在触屏设备页面上形成对应的目标图形。
举例而言,手柄事件类型包含两种:摇杆事件和按键事件,摇杆事件包含X和Y坐标信息,计算摇杆滑动过程中的手柄坐标,因为摇杆产生的实际效果为圆形,所以点坐标的生成,使用sin、cos数学运算计算出圆上的120个离散坐标点,然后依次向触屏节点写离散坐标点信息,开启手柄摇杆发送第一线程向手柄节点写摇杆摆动事件,将之前计算出的圆上坐标点依次以事件形式发送出去,根据预设的键位映射信息将多个离散坐标点信息映射为触屏设备的触屏点操作,并触屏设备页面上形成对应的圆形。
步骤204,第五线程向触屏节点写入按下、多次移动和抬起事件。
步骤205,根据预设的键位映射信息获取对按下、多次移动和抬起事件进行响应生成第二响应结果。
具体地,第五线程向触屏节点写入多个预设坐标信息,将多个预设坐标信息处理映射为多个位置点变化信息,在触屏设备页面上形成与多个位置点变化信息对应的目标形状比如线段。
更具体地,开启触屏发送第五线程向触屏节点发送按下事件,多点触碰协议中,触点按下需要slotId、trackingId、touch down、X和Y坐标信息。对于触屏操作,多点触碰协议规定,只有第一个触点按下,才会上报BTN_TOUCH DOWN数据,最后一个触点抬起,才会上报BTN_TOUCH UP数据,触点按下事件,是否包含Down事件,依据当前slot count是否大于0,大于0表示当前有其他点按下,则不需要发出Down事件;等于0表示当前没有其他点按下,则需要发出Down事件。
更具体地,向触屏节点发送滑动事件,滑动事件中包含slotId、X和Y坐标信息即可,当上一个完成事件中的slotId和当前滑动事件的slotId一样时,该滑动事件键不需要再加入slotId信息,连续发出MOVE_NUM个移动事件,每次对x坐标递增,对y左边递减,则可以达到在触屏上画出线段的效果。Sleep延时的目的是保证当前发送的事件被输入系统处理完毕。
更具体地,模拟触屏触点的抬起,触点抬起需要slotId、trackingId、touch up信息。且触点按下事件,是否包含Up事件,依据当前slot count是否为1,等于1表示只有当前点按下,则需要发出Up事件;大于1表示当前有其他点按下,则不需要发出Up事件,循环进行上述操作,直到收到monkey测试停止命令停止该第五线程。
步骤206,根据第一响应结果和第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。
具体地,根据第一响应结果和第二响应结果确定游戏手柄和所述触屏设备的测试结果,比如检测触屏设备触屏功能的老化情况,以及游戏手柄功能。
由此,可以自由选择测试功能,即单触屏压测、单手柄压测、有序测试、无序测试等,通过向输入节点写事件的方法,手柄按键或触屏事件响应速度快。
本申请的方法尽可能涵盖所有易出现问题的场景,尽可能暴露手柄功能的问题,可快速有效压测游戏手柄功能,而且通过记录测试时间内的日志方便手柄功能问题的定位,适配性好,不局限于具体游戏手柄型号和触屏设备型号,方便接入新游戏手柄的压测,以及虽然频繁向输入节点写事件,但相对于手柄厂商提供的方法处理延时少,按键响应快。
本实施例的设备测试方法,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点,第一线程向手柄节点写入摇杆摆动事件,根据预设的键位映射信息获取对摇杆摆动事件进行响应生成第一响应结果,第五线程向触屏节点写入按下、多次移动和抬起事件,根据预设的键位映射信息获取对按下、多次移动和抬起事件进行响应生成第二响应结果,根据第一响应结果和第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了可以针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
本申请实施例提出了又一种设备测试方法,图3为本申请又一实施例所提供的设备测试方法的流程示意图。
如图3所示,该设备测试方法可以包括以下步骤:
步骤301,获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点。
需要说明的是,步骤301与步骤101相同,具体描述参见步骤101的描述,此处不再详述。
步骤302,第二线程向手柄节点写入按键事件、第三线程向手柄节点写入一键事件和第四线程向手柄节点写入组合按键事件。
步骤303,根据预设的键位映射信息获取对写入按键事件、一键事件和组合按键事件进行响应生成多个第一响应结果。
步骤304,通过各个线程向触屏节点写入多个不同第二预设事件,以及对多个不同第二预设事件进行响应生成多个第二响应结果。
其中,手柄按键事件包含按键索引、down/up信息,开启手柄按键发送事件线程,模拟手柄按键的按下,获取手柄按键索引,需要保证该手柄按键在其他线程中按下后,则再次查找,直到获取到没有按下的按键索引,模拟手柄按键的抬起,发送当前按键抬起事件后,需要清除该按键标志,保证下次可以重新获取已经释放按键的索引,循环进行上述操作,直到收到monkey测试停止命令停止该线程。
其中,如果手柄支持一键功能,可以使用如下方法进行一键压测,开启手柄按键发送事件线程,模拟手柄一键的按下,与手柄按键按下不同的是,手柄一键特定于某个按键,只需固定发出该特定按键的按下事件即可,模拟手柄一键的抬起,循环进行上述操作,直到收到monkey测试停止命令停止该线程。
其中,如果手柄支持组合按键功能,可以使用如下方法进行组合按键功能压测,开启手柄按键发送事件线程,假设组合按键为A+B,模拟组合按键A按下,模拟组合按键B按下,模拟组合按键B抬起,模拟组合按键A抬起,循环进行上述操作,直到收到monkey测试停止命令停止该线程。
其中,开启多线程,每个线程负责一种事件的写入,比如向触屏节点写按下、多次移动和抬起事件,然后由游戏手柄输入系统接收该事件,并分发处理,形成页面上的线段或者是向触屏节点写点击事件由游戏手柄输入系统处理事件形成的点。
需要说明的是,无论多个线程同时运行,只会对手柄节点和触屏节点进行写事件。
其中,预先配置游戏手柄按键显示到触屏设备上触屏点的键位映射信息,也就是说,配置后手柄按键按下,触屏设备上会有键位映射的触点按下。
步骤305,根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。
需要说明的是,步骤305与步骤104相同,具体描述参见步骤104的描述,此处不再详述。
本实施例的设备测试方法,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
为了实现上述实施例,本申请还提出一种设备测试装置。
图4为本申请一实施例所提供的设备测试装置的结构示意图。
如图4所示,该设备测试装置40包括:获取模块401、第一写入模块402、第二写入模块403、第一生成模块404、第二生成模块405和确定模块406。
其中,获取模块401,用于获取所述游戏手柄对应的手柄节点和所述触屏设备对应的触屏节点。
第一写入模块402,用于通过各个线程同时向所述手柄节点写入多个不同第一预设事件。
第二写入模块403,用于通过各个线程同时向所述触屏节点写入多个不同第二预设事件。
第一生成模块404,用于根据预设的键位映射信息获取对所述多个不同第一预设事件进行响应生成多个第一响应结果。
第二生成模块405,用于根据所述预设的键位映射信息获取对所述多个不同第二预设事件进行响应生成多个第二响应结果。
确定模块406,用于根据所述多个第一响应结果和所述多个第二响应结果确定所述游戏手柄,和/或,所述触屏设备的测试结果。
进一步地,在本申请实施例一种可能的实现方式中,如图5所示,在如图4所示实施例的基础上,第一写入模块402,包括:第一写入单元4021、第二写入单元4022、第三写入单元4023和第四写入单元4024。
第一写入单元4021,用于第一线程向所述手柄节点写入摇杆摆动事件。和/或,
第二写入单元4022,用于第二线程向所述手柄节点写入按键事件。和/或,
第三写入单元4023,用于第三线程向所述手柄节点写入一键事件。和/或,
第四写入单元4024,用于第四线程向所述手柄节点写入组合按键事件。
在本申请实施例一种可能的实现方式中,第一写入单元4021,具体用于:通过所述第一线程向所述手柄节点写入多个离散坐标点信息。
第一生成模块404,具体用于:根据所述预设的键位映射信息将所述多个离散坐标点信息映射为所述触屏设备的触屏点操作,并在触屏设备页面上形成对应的目标图形。
在本申请实施例一种可能的实现方式中,如图6所示,在如图4所示实施例的基础上,第二写入模块403,包括:
第五写入单元4031,用于第五线程向所述触屏节点写入按下、多次移动和抬起事件。和/或,
第六写入单元4032,用于第六线程向所述触屏节点写入点击事件。
在本申请实施例一种可能的实现方式中,第五写入单元4031,具体用于:所述第四线程向所述触屏节点写入多个预设坐标信息。
第二生成模块405,具体用于:根据所述预设的键位映射信息将所述多个预设坐标信息处理映射为多个位置点变化信息,在所述触屏设备页面上形成与所述多个位置点变化信息对应的目标形状。
需要说明的是,前述对设备测试方法实施例的解释说明也适用于该实施例的设备测试装置,其实现原理类似,此处不再赘述。
本申请实施例的设备测试装置,通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了可以针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
为了实现上述实施例,本申请还提出一种电子设备。
本申请实施例的电子设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如前述实施例所述的设备测试方法。
本实施例的电子设备,处理器通过执行存储器中存储的计算机程序,来实现降低设备测试方法,从而达到了通过获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。通过分别向手柄节点和触屏节点写入不同事件生成不同的响应结果来实现了可以针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
本申请实施例还提出了一种计算机可读存储介质,其上存储有计算机程序,当该程序被处理器执行时实现如前述实施例所述的设备测试方法。
一种可选实现形式中,本实施例可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本申请实施方式的计算机可读存储介质,可设置在电子设备中,通过执行其上存储的设备测试方法,获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;通过各个线程分别同时向手柄节点写入多个不同第一预设事件和向触屏节点写入多个不同第二预设事件;根据预设的键位映射信息获取对多个不同第一预设事件进行响应生成多个第一响应结果,以及对多个不同第二预设事件进行响应生成多个第二响应结果;根据多个第一响应结果和多个第二响应结果确定游戏手柄,和/或,触屏设备的测试结果。实现了可以针对更多不同场景同时测试,更加全面对游戏手柄功能进行测,提高测试效率,并且能够对游戏手柄功能问题进行定位。
本申请实施例还提出了一种计算机程序产品,当计算机程序产品中的指令由处理器执行时,执行如前述实施例所述的设备测试方法。
在本说明书的描述中,参考术语“一个实施方式”、“某些实施方式”、“示意性实施方式”、“示例”、“具体示例”、或“一些示例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本申请的实施方式,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。

Claims (10)

1.一种设备测试方法,其特征在于,游戏手柄和触屏设备建立连接,包括以下步骤:
获取所述游戏手柄对应的手柄节点和所述触屏设备对应的触屏节点;
通过各个线程分别同时向所述手柄节点写入多个不同第一预设事件和向所述触屏节点写入多个不同第二预设事件;
根据预设的键位映射信息获取对所述多个不同第一预设事件进行响应生成多个第一响应结果,以及对所述多个不同第二预设事件进行响应生成多个第二响应结果;
根据所述多个第一响应结果和所述多个第二响应结果确定所述游戏手柄,和/或,所述触屏设备的测试结果。
2.如权利要求1所述的方法,其特征在于,所述通过各个线程分别同时向所述手柄节点写入多个不同第一预设事件,包括:
第一线程向所述手柄节点写入摇杆摆动事件;和/或,
第二线程向所述手柄节点写入按键事件;和/或,
第三线程向所述手柄节点写入一键事件;和/或,
第四线程向所述手柄节点写入组合按键事件。
3.如权利要求1所述的方法,其特征在于,所述通过各个线程分别同时向所述触屏节点写入多个不同第二预设事件,包括:
第五线程向所述触屏节点写入按下、多次移动和抬起事件;和/或,
第六线程向所述触屏节点写入点击事件。
4.如权利要求2所述的方法,其特征在于,所述第一线程向所述手柄节点写入摇杆摆动事件,包括:
通过所述第一线程向所述手柄节点写入多个离散坐标点信息;
所述根据预设的键位映射信息获取对所述摇杆摆动事件进行响应生成第一响应结果,包括:
根据所述预设的键位映射信息将所述多个离散坐标点信息映射为所述触屏设备的触屏点操作,并在所述触屏设备页面上形成对应的目标图形。
5.如权利要求3所述的方法,其特征在于,所述第五线程向所述触屏节点写入按下、多次移动和抬起事件,包括:
所述第五线程向所述触屏节点写入多个预设坐标信息;
所述根据预设的键位映射信息获取对所述按下、多次移动和抬起事件进行响应生成第二响应结果,包括:
根据所述预设的键位映射信息将所述多个预设坐标信息处理映射为多个位置点变化信息,在所述触屏设备页面上形成与所述多个位置点变化信息对应的目标形状。
6.一种设备测试装置,其特征在于,包括:
获取模块,用于获取游戏手柄对应的手柄节点和触屏设备对应的触屏节点;
第一写入模块,用于通过各个线程同时向所述手柄节点写入多个不同第一预设事件;
第二写入模块,用于通过各个线程同时向所述触屏节点写入多个不同第二预设事件;
第一生成模块,用于根据预设的键位映射信息获取对所述多个不同第一预设事件进行响应生成多个第一响应结果;
第二生成模块,用于根据所述预设的键位映射信息获取对所述多个不同第二预设事件进行响应生成多个第二响应结果;
确定模块,用于根据所述多个第一响应结果和所述多个第二响应结果确定所述游戏手柄,和/或,所述触屏设备的测试结果。
7.如权利要求6所述的装置,其特征在于,所述第一写入模块,包括:
第一写入单元,用于第一线程向所述手柄节点写入摇杆摆动事件;和/或,
第二写入单元,用于第二线程向所述手柄节点写入按键事件;和/或,
第三写入单元,用于第三线程向所述手柄节点写入一键事件;和/或,
第四写入单元,用于第四线程向所述手柄节点写入组合按键事件。
8.如权利要求6所述的装置,其特征在于,所述第二写入模块,包括:
第五写入单元,用于第五线程向所述触屏节点写入按下、多次移动和抬起事件;和/或,
第六写入单元,用于第六线程向所述触屏节点写入点击事件。
9.一种触屏设备,其特征在于,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-5中任一项所述的设备测试方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的设备测试方法。
CN201910877514.8A 2019-09-17 2019-09-17 设备测试方法、装置及电子设备 Active CN112525566B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910877514.8A CN112525566B (zh) 2019-09-17 2019-09-17 设备测试方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910877514.8A CN112525566B (zh) 2019-09-17 2019-09-17 设备测试方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112525566A CN112525566A (zh) 2021-03-19
CN112525566B true CN112525566B (zh) 2022-12-13

Family

ID=74974748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910877514.8A Active CN112525566B (zh) 2019-09-17 2019-09-17 设备测试方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112525566B (zh)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102395939A (zh) * 2009-04-21 2012-03-28 摩托罗拉移动公司 用于在触敏装置上的触觉响应的一致性的装置和方法
CN103316472A (zh) * 2013-05-17 2013-09-25 南京睿悦信息技术有限公司 一种基于蓝牙手柄的Android设备游戏平台系统及其实现方法
CN104991734A (zh) * 2015-06-30 2015-10-21 北京奇艺世纪科技有限公司 一种对基于触屏方式的游戏实现操控的方法及装置
CN105477854A (zh) * 2014-12-19 2016-04-13 广州爱九游信息技术有限公司 应用于智能终端的手柄控制方法、装置及系统
CN105872664A (zh) * 2016-03-31 2016-08-17 李强 触屏游戏操控方法、装置和系统
US9937415B1 (en) * 2013-12-17 2018-04-10 Amazon Technologies, Inc. Virtual controller for touchscreen
CN109117062A (zh) * 2018-07-20 2019-01-01 北京超卓科技有限公司 映射方法和装置以及移动设备和游戏装置
CN109432767A (zh) * 2018-11-15 2019-03-08 深圳市七熊科技有限公司 一种游戏手柄与终端的交互方法及系统
CN109766250A (zh) * 2017-11-09 2019-05-17 广东欧珀移动通信有限公司 移动终端及其响应性能测试方法、装置和存储介质
CN109999486A (zh) * 2019-03-29 2019-07-12 华为技术有限公司 一种游戏手柄的控制方法及设备
CN110168487A (zh) * 2017-11-07 2019-08-23 华为技术有限公司 一种触摸控制方法及装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102395939A (zh) * 2009-04-21 2012-03-28 摩托罗拉移动公司 用于在触敏装置上的触觉响应的一致性的装置和方法
CN103316472A (zh) * 2013-05-17 2013-09-25 南京睿悦信息技术有限公司 一种基于蓝牙手柄的Android设备游戏平台系统及其实现方法
US9937415B1 (en) * 2013-12-17 2018-04-10 Amazon Technologies, Inc. Virtual controller for touchscreen
CN105477854A (zh) * 2014-12-19 2016-04-13 广州爱九游信息技术有限公司 应用于智能终端的手柄控制方法、装置及系统
CN104991734A (zh) * 2015-06-30 2015-10-21 北京奇艺世纪科技有限公司 一种对基于触屏方式的游戏实现操控的方法及装置
CN105872664A (zh) * 2016-03-31 2016-08-17 李强 触屏游戏操控方法、装置和系统
CN110168487A (zh) * 2017-11-07 2019-08-23 华为技术有限公司 一种触摸控制方法及装置
CN109766250A (zh) * 2017-11-09 2019-05-17 广东欧珀移动通信有限公司 移动终端及其响应性能测试方法、装置和存储介质
CN109117062A (zh) * 2018-07-20 2019-01-01 北京超卓科技有限公司 映射方法和装置以及移动设备和游戏装置
CN109432767A (zh) * 2018-11-15 2019-03-08 深圳市七熊科技有限公司 一种游戏手柄与终端的交互方法及系统
CN109999486A (zh) * 2019-03-29 2019-07-12 华为技术有限公司 一种游戏手柄的控制方法及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Kinect的虚拟鼠标体感交互;朱耀麟等;《西安工业大学学报》;20150930(第09期);正文第720-723页 *

Also Published As

Publication number Publication date
CN112525566A (zh) 2021-03-19

Similar Documents

Publication Publication Date Title
CN107038112B (zh) 应用界面的调试方法及装置
US9317413B2 (en) Testing device and testing method thereof
US10853232B2 (en) Adaptive system for mobile device testing
CN107506300B (zh) 一种用户界面测试方法、装置、服务器和存储介质
CN105477854B (zh) 应用于智能终端的手柄控制方法、装置及系统
CN106126424B (zh) 一种脚本可视化的自动化测试方法、装置和移动终端
KR101118602B1 (ko) 장면 기반 테스트 자동화 방법 및 그 시스템
CN106557424A (zh) 内存测试方法、被测终端、测试客户端及系统
WO2021208512A1 (zh) 用户界面的控件信息的获取方法、装置、终端及存储介质
CN108228065B (zh) 探测ui控件信息的方法、装置和电子设备
CN108170608A (zh) 兼容性测试方法、测试终端及存储介质
CN110610089A (zh) 用户行为模拟方法、装置及计算机设备
CN107102950A (zh) 一种应用程序测试方法和装置
CN105426049B (zh) 一种删除方法及终端
CN107357530B (zh) 一种针对OpenStack云硬盘的设置方法及装置
CN108984374B (zh) 一种数据库性能的测试方法和系统
CN112685299B (zh) 自动测试方法、装置、电子设备及可读存储介质
US10135684B2 (en) Differential staging of devices in bulk enrollment
CN108196993A (zh) Usb接口测试方法、终端及计算机可读存储介质
CN112525566B (zh) 设备测试方法、装置及电子设备
EP3014426B1 (en) Self-revealing symbolic gestures
CN110321321A (zh) 网络块设备快照读写方法、装置、设备及存储介质
JP5204343B1 (ja) テストシステム及びプログラム
US8803808B1 (en) Keyboard event detection and network event generation
CN110297754A (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
GR01 Patent grant
GR01 Patent grant