当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于设备无关的自动应用测试的技术制造技术

技术编号:18580405 阅读:28 留言:0更新日期:2018-08-01 14:45
用于进行设备无关的应用测试的技术包括主机计算设备和一个或多个测试计算设备。该主机计算机设备记录由测试计算设备的应用生成的用户界面事件以及指示该应用的显示界面的视频数据。该主机计算设备使用计算机视觉算法来检测视频数据中对应于用户界面事件的用户界面对象,该计算机视觉算法可包括图像特征检测或光学字符识别。该主机计算设备生成标识用户界面对象和用户交互的基于对象的测试脚本。该主机计算设备可使用计算机视觉算法在由不同的测试计算设备执行的应用的显示界面中标识该用户界面对象。该主机计算设备对检测到的用户界面对象执行该指定的用户交互。描述了其他实施例并要求它们的权利。

The technology of automatic application testing for equipment independent

Technologies for device independent application testing include host computing devices and one or more test computing devices. The host computer device records user interface events generated by the application of the test computing device and video data indicating the display interface of the application. The computer vision algorithm is used to detect the user interface objects in the video data corresponding to the user interface events. The computer vision algorithm can include image feature detection or optical character recognition. The host computing device generates object based test scripts that identify user interface objects and user interactions. The host computing device can use computer vision algorithms to identify the user interface object in the display interface of the application executed by different test computing devices. The host computing device performs the specified user interaction on the detected user interface object. Other embodiments are described and their rights are requested.

【技术实现步骤摘要】
【国外来华专利技术】用于设备无关的自动应用测试的技术背景当前,巨大数量且各种各样的应用程序(“应用”)可用于许多不同的计算平台。然而,随着应用的数目以及可执行这些应用的计算设备的数目的增加,应用验证和测试变成越来越困难的问题。应用验证和测试可要求测试者设计出模仿与应用的现实世界人类交互的测试实例。在一些情况下,测试者可被要求针对具有不同形状因素(例如,屏幕尺寸、长宽比等)的多个计算设备来验证同一应用。典型的应用测试系统可能对于缩放以支持在大量不同的设备上测试一应用有困难。例如,某些应用测试系统可用硬编码坐标系来记录描述到该应用的用户输入的脚本。然而,那些基于坐标的系统无法跨具有不同形状因素的设备缩放。作为另一实例,某些应用测试系统可允许测试者基于操纵操作系统级用户界面控件(诸如由AndroidTM提供的UIAutomator框架)来通过编程写脚本。然而,编程用户界面脚本化通常比记录脚本要劳动密集的多,并且无法用于基于不同的底层操作系统和/或用户界面框架来测试应用。具体地,许多游戏不使用系统提供的用户界面框架,并且因此无法用编程用户界面脚本化来进行测试。附图简述在所附的附图中,以示例方式而不是以限制方式示出本文中中所述的多个概念。为说明简单和清楚起见,附图中所示出的元件不一定是按比例绘制的。在认为合适的情况下,已在多个附图之间重复了参考标号以指示对应的或类似的元件。图1是用于进行设备无关的自动化应用测试的系统的至少一个实施例的简化框图;图2是可由图1的系统建立的各环境的至少一个实施例的简化框图;图3是可由图1和图2的计算设备执行的用于记录基于对象的测试脚本的方法的至少一个实施例的简化流程图;图4是可由图1和图2的计算设备执行的用于回放基于对象的测试脚本的方法的至少一个实施例的简化流程图;以及图5是可由图1和图2的系统执行的用于进行设备无关的应用测试的方法的示意性图示。具体实施方式尽管本公开的概念易于具有各种修改和替代形式,但是,在附图中已作为示例示出了并将在本文中详细描述本公开的特定实施例。然而,应该理解,没有将本公开的概念限制于所公开的特定形式的意图,而相反,意图旨在涵盖符合本公开和所附权利要求书的所有修改、等效方案和替代方案。说明书中对“一个实施例”、“实施例”、“说明性实施例”等的引用指示所描述的实施例可包括特定特征、结构或特性,但是,每一个实施例可包括或可以不一定包括该特定特征、结构或特性。此外,此类短语不一定是指同一个实施例。此外,当结合实施例描述特定特征、结构或特性时,认为结合无论是否明确描述的其他实施例来实施这样的特征、结构或特性在本领域技术人员的知识范围之内。附加地,应当领会,以“A、B和C中的至少一者”的形式包括列表中的项可意指(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。类似地,以“A、B或C中的至少一者”的形式列出的项可以意指(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。在一些情况下,所公开的各实施例可在硬件、固件、软件或其任何组合中实现。所公开的多个实施例也可被实现为由一个或多个瞬态或非瞬态机器可读(例如,计算机可读)存储介质承载或被存储在其上的指令,这些指令可由一个或多个处理器读取和执行。机器可读存储介质可以被具体化为用于以可由机器可读取的形式存储或传输信息的任何存储设备、机制或其他物理结构(例如,易失性或非易失性存储器、介质盘或其他介质设备)。在附图中,某些结构或方法特征可按特定安排和/或排序示出。然而,应当理解,此类特定安排和/或排序可能不是必需的。相反,在某些实施例中,这样的特征可按与在说明性附图中示出的不同的方式和/或顺序来安排。此外,在特定附图中包括结构或方法特征不意味着暗示在所有实施例中都需要这样的特征,并且在某些实施例中,可以不包括这样的特征,或它们可以与其他特征相结合。现参考图1,在一说明性实施例中,用于进行设备无关的应用测试的系统100包括可通过网络106进行通信的主机计算设备102和一个或多个测试计算设备104。说明性系统100包括两个测试计算设备104a、104b;然而,应当理解,在一些实施例中,系统100可包括不同数目的测试计算设备104。在使用时,如以下更详细描述的,主机计算设备102连接到测试集散设备104a并开始应用测试会话。在应用测试会话期间,用户操作测试计算设备104a的应用,例如进行用户界面交互以测试应用的功能。在应用测试会话期间,主机计算设备102记录用户界面事件以及由测试计算设备104a生成的显示界面的视频。主机计算设备102使用计算机视觉算法分析视频数据以标识与用户界面事件相关联的用户界面对象(例如,按钮、菜单项等),并基于应用测试会话来生成基于对象的测试脚本。在生成测试脚本后,主机计算设备102可开始与另一测试计算设备104b的应用测试会话。测试计算设备104a、104b可具有不同的形状因素、不同的操作系统,或在其他方面不同。主机计算设备102通过分析测试计算设备104b的显示界面以标识用户界面对象并对用户界面对象执行脚本化动作来回放基于对象的测试脚本。由此,系统100可促成对各种不同的测试计算设备104的自动化测试,同时要求用户仅记录单个应用测试会话。此外,与编程测试脚本化相比,系统100可通过允许脚本记录来改进效率,并可用于测试支持不同脚本化环境的计算设备104(例如,测试具有不同的底层操作系统和/或用户界面框架的计算设备104)。主机计算设备102可被具体化为能够执行本文中描述的功能的任何类型的计算或计算机设备,包括而不限于计算机、台式计算机、工作站、膝上型计算机、笔记本计算机、平板计算机、可移动计算设备、可穿戴计算设备、网络设备、web设备、分布式计算系统、基于处理器的系统和/或消费电子设备。如图1中所示,作为说明,主机计算设备102包括处理器120、输入/输出子系统122、存储器124、数据存储设备126以及通信电路系统128。当然,在其他实施例中,主机计算设备102可包括其他或额外的组件,诸如通常在台式计算机中发现的那些设备(例如,各种输入/输出设备)。另外,在某些实施例中,说明性组件中的一者或多者可以被合并在另一组件中,或能以其他方式形成另一组件的部分。例如,在某些实施例中,存储器124或其多个部分可以被合并在处理器120中。处理器120可以被具体化为能够执行本文中所描述的功能的任何类型的处理器。例如,处理器120可以被具体化为(诸)单核或多核处理器、数字信号处理器、微控制器或其他处理器或处理/控制电路。类似地,存储器124可以具体化为能够执行本文中所描述的功能的任何类型的易失性或非易失性存储器或数据存储设备。在操作中,存储器124可以存储在主机计算设备102的操作期间使用的各种数据和软件,诸如操作系统、应用、程序、库以及驱动程序。存储器124可经由I/O子系统122通信地耦合到处理器120,该I/O子系统122可以具体化为用于促进与主机计算设备102的处理器120、存储器124以及其他组件之间的输入/输出操作的电路系统和/或组件。例如,I/O子系统122可以具体化为或以其他方式包括,存储器控制器中枢、输入/输出控制中枢、固件设备、通信链路(即,点对点链路、总线本文档来自技高网...

【技术保护点】
1.一种用于进行应用测试的计算设备,所述计算设备包括:记录模块,所述记录模块用于(i)记录由测试计算设备生成的用户界面事件,其中所述用户界面事件对应于与由所述测试计算设备的应用生成的显示界面的用户交互,以及(ii)记录指示所述测试计算设备的所述显示界面的视频数据,其中所述视频数据对应于所述用户界面事件;对象检测模块,所述对象检测模块用于检测所述视频数据中的用户界面对象,其中所述用户界面对象与所述用户界面事件相关联;以及脚本变换模块,所述脚本变换模块用于生成基于对象的脚本命令,其中所述基于对象的脚本命令标识所述用户界面对象以及所述用户交互。

【技术特征摘要】
【国外来华专利技术】1.一种用于进行应用测试的计算设备,所述计算设备包括:记录模块,所述记录模块用于(i)记录由测试计算设备生成的用户界面事件,其中所述用户界面事件对应于与由所述测试计算设备的应用生成的显示界面的用户交互,以及(ii)记录指示所述测试计算设备的所述显示界面的视频数据,其中所述视频数据对应于所述用户界面事件;对象检测模块,所述对象检测模块用于检测所述视频数据中的用户界面对象,其中所述用户界面对象与所述用户界面事件相关联;以及脚本变换模块,所述脚本变换模块用于生成基于对象的脚本命令,其中所述基于对象的脚本命令标识所述用户界面对象以及所述用户交互。2.如权利要求1所述的计算设备,其特征在于,所述用户界面事件包括用户选择事件,其中所述用户选择事件包括触摸事件、点击事件或定点事件。3.如权利要求1所述的计算设备,其特征在于:检测所述视频数据中的用户界面对象包括用图像特征检测计算机视觉算法来检测所述用户界面对象;以及生成基于对象的脚本命令包括存储与所述用户界面对象相关联的图像数据。4.如权利要求1所述的计算设备,其特征在于:检测所述视频数据中的用户界面对象包括用光学字符识别计算机视觉算法来检测所述用户界面对象;以及生成基于对象的脚本命令包括存储与所述用户界面对象相关联的文本数据。5.如权利要求1所述的计算设备,其特征在于,记录所述视频数据包括用所述计算设备的相机来记录所述视频数据。6.如权利要求1-5中的任一项所述的计算设备,其特征在于:所述对象检测模块进一步用于确定所述用户界面对象是否在由第二测试计算设备的应用生成的第二显示界面中被检测到;以及所述计算设备进一步包括自动化模块,所述自动化模块用于响应于对所述用户界面对象被检测到的确定而对所述第二测试计算设备的应用的用户界面对象执行所述用户交互。7.一种用于进行应用测试的计算设备,所述计算设备包括:测试评估模块,所述测试评估模块用于从测试脚本读取基于对象的脚本命令,其中所述基于对象的脚本命令标识用户界面对象和用户交互;对象检测模块,所述对象检测模块用于确定所述用户界面对象是否在由测试计算设备的应用生成的显示界面中被检测到;以及自动化模块,所述自动化模块用于响应于对所述用户界面对象被检测到的确定而对所述测试计算设备的所述应用的所述用户界面对象执行所述用户交互。8.如权利要求7所述的计算设备,其特征在于,所述测试评估模块进一步用于:响应于所述用户交互的执行而指示测试成功;响应于对所述用户界面对象没有被检测到的确定而指示测试失败。9.如权利要求7所述的计算设备,其特征在于:所述测试评估模块进一步用于响应于对所述用户界面对象没有被检测到的确定而基于用户输入确定所述用户界面对象的偏移;以及执行所述用户交互进一步包括基于所述用户界面对象的偏移执行所述用户交互。10.如权利要求7所述的计算设备,其特征在于,确定所述用户界面对象是否在所述显示界面中被检测到包括:用光学字符识别计算机视觉算法确定所述用户界面对象是否在所述显示界面中被检测到;以及使用字典映射将与所述用户界面对象相关联的文本数据映射成第二文本数据。11.如权利要求7-10中的任一项所述的计算设备,其特征在于,对所述测试计算设备的所述应用的所述用户界面对象执行所述用户交互包括:用所述测试计算设备生成对所述用户...

【专利技术属性】
技术研发人员:龚炯王昀沈海豪
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1