CN103365773A - 自动测试的系统和方法 - Google Patents

自动测试的系统和方法 Download PDF

Info

Publication number
CN103365773A
CN103365773A CN201310094744XA CN201310094744A CN103365773A CN 103365773 A CN103365773 A CN 103365773A CN 201310094744X A CN201310094744X A CN 201310094744XA CN 201310094744 A CN201310094744 A CN 201310094744A CN 103365773 A CN103365773 A CN 103365773A
Authority
CN
China
Prior art keywords
test
calculation element
script
calculation
result
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.)
Pending
Application number
CN201310094744XA
Other languages
English (en)
Inventor
J·波尔克
D·阿拉姆
S·卡普贝尔
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.)
Daybreak Game Co LLC
Original Assignee
Sony Online Entertainment LLC
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 Sony Online Entertainment LLC filed Critical Sony Online Entertainment LLC
Publication of CN103365773A publication Critical patent/CN103365773A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • 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/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开涉及自动调试的系统和方法。提供了一种被设计用于使游戏和网络测试自动化的自动化套件。可以由采用OCR和对象识别和快速图像分析的脚本引擎来驱动系统,以执行其自动化任务。该系统可以单独或共同地执行其任务,从而有可能产生能够相互通信和配合的众多客户端。

Description

自动测试的系统和方法
技术领域
本公开涉及游戏的测试,具体地说,涉及游戏的自动测试系统和方法。
背景技术
现代游戏尤其是MMO空间中的游戏变得越来越复杂。这个类别中的大多数游戏包含数百个系统并且具有数量成百的开发团队。每天针对MMO产生大量的内容并且期望测试团队测试所有内容以确保准确性和完整性。
典型的测试团队根据他们所支持的游戏范围,可能容易组队10至30个成员。通常,期望这些测试员执行人工测试“回归”,或者执行可以被视为整个游戏的“走查(walk-through)”操作,以确保在开发期间没有什么出现问题。这个过程通常是耗时且低效的,因为测试员事实上正寻找的是他们过去已经发现的问题,或者只是验证预期的功能确实存在。在一些情况下,测试员不得不一起工作来验证功能。这也可能是非常耗时的,因为测试员不得不互相等待以在继续进行之前达到特定状态。
已经进行了一些努力来补救这类缺陷,但是这类努力通常只允许人工测试员通过使用宏来节省键盘输入。除此之外,许多这类现有系统只是在内部游戏存储器上进行测试,这可能是不利的。此外,这类系统常常要求获知系统所处的状态,这也可能是不利的。
发明内容
根据这里描述的原理的系统和方法通过自动执行并验证测试结果而不需要测试员执行某些人工回归阶段。根据某些实现方式的系统和方法通过以下步骤执行这些也被称为任务的测试:以与真人测试员相同的方式处理任务,即通过分析画面(例如,帧缓冲器)并且验证其内容。可以根据之前任务的结果进行测试。以此方式,可以在真人测试员所需的时间的一部分内执行测试。所述系统和方法可以利用过去数年内计算方面的任何或全部进步,包括多核CPU、GPU等。
根据这里公开的原理的系统和方法可以包括多个系统,包括:脚本引擎、分布执行框架、全功能自动化IDE、基于网络的管理和报告、与第三方产品的集成和与游戏或待测试的其它应用程序的快速集成。
所述系统和方法提供被设计用于使游戏和网络测试自动化的自动化套件。所述系统可以由采用图像识别和快速图像分析的脚本引擎来驱动,以执行其自动化任务。所述任务可以单独或共同地执行,从而有可能产生能够相互通信和配合的数百客户端。
在一个方面,本发明涉及一种测试应用程序的至少一部分的方法,应用程序的实例化在多个计算装置的每个上运行,所述方法包括:显示潜在测试的列表,每个测试与测试脚本相关联;接收对所述列表中的测试的选择;将所选择的测试分配给所述多个计算装置中的一个计算装置;在所述应用程序的实例化内在多个计算装置中的一个计算装置上运行测试脚本;以及分析所述多个计算装置中的所述一个计算装置的输出,以确定运行的测试脚本的结果。
本发明的实现方式可以包括以下的一个或多个。分配所选择的测试的步骤可以包括接收指示所述多个计算装置中要运行测试脚本的一个计算装置的输入。分析输出的步骤可以包括分析帧缓冲器、分析存储器状态或检查网络包。分配所选择的测试的步骤可以包括确定所述多个计算装置中要运行测试脚本的一个计算装置,确定的步骤包括确定多个计算装置中能够运行所述测试脚本并且当前没有运行另一个测试脚本的一个计算装置。
接收和分配的步骤可以包括接收对第一测试的选择并且将所选择的第一测试分配给所述多个计算装置中的第一计算装置,并且还包括接收对所述列表中的第二测试的选择,并且将所选择的第二测试分配给多个计算装置中的所述一个计算装置或分配给多个计算装置中的另一个计算装置。接收和分配的步骤还可以包括接收对第一测试的选择并且将所选择的第一测试分配给多个计算装置中的所述一个计算装置上的第一线程,并且还可以包括接收对所述列表中的第二测试的选择,并且将所选择的第二测试分配给多个计算装置中的所述一个计算装置上的第二线程。所述方法还可以包括分析日志以确定与所述结果相关的至少一个操作参数。所述结果是空结果、错误消息等。所述方法还可以包括显示结果的指示。所述测试脚本可以导致对帧缓冲器内所显示的文本的光学字符识别的步骤。所述测试脚本可以导致对帧缓冲器内的对象的对象识别的步骤。所述测试脚本还可以导致模拟来自鼠标、键盘或游戏板的输入的步骤。所述方法还可以包括在从软件开发追踪应用程序接收到报错时,产生测试脚本。所述方法还可以包括显示与被分析的输出和被分析的日志对应的组合结果。所述方法还可以包括从所述列表选择另一个测试,所述另一个测试是基于所述结果选择的,将另一个测试分配给多个计算装置中的所述一个计算装置,在所述应用程序的实例化内在多个计算装置中的所述一个计算装置上运行与另一个测试相关联的测试脚本,并且分析多个计算装置中的所述一个计算装置的输出,以确定运行的与所述另一个测试相关联的测试脚本的结果。所述测试和所述另一个测试模拟机器人(bot)或多个这种机器人的动作。被模拟的机器人可以被配置为完成单组目标。所述测试可以与工作相关联,并且所述工作可以包括多个测试。
在另一个方面,本发明涉及一种非暂态计算机可读介质,所述计算机可读介质包括用于致使计算装置执行以上方法的指令。
本发明的优点可以包括以下的一个或多个。所述系统和方法在测试或验证预期功能或已知漏洞时尤其有效,从而通过允许人工测试员集中寻找应用程序(如,视频游戏)中的新漏洞或其它问题来允许他们更有效地工作。游戏的整个回归可能要花费数百小时或甚至更长时间来完成。通过允许自动执行某些测试,这些人工测试员可以使用这样的时间来改进游戏及其内容。在已知该教导(包括附图和权利要求书)的情况下,其它优点对于本领域的普通技术人员来说将是清楚的。
附图说明
图1示出根据这里描述的原理的系统和方法中可以采用的多个模块。
图2示出图1的脚本引擎模块内的模块。
图3示出图1的分布执行框架模块内的模块。
图4(A)-(C)示出图1的自动化IDE模块内的模块,并且图4D示出IDE的示例性用户界面。
图5示出图1的管理/报告模块内的模块。
图6示出图1的第三方集成模块内的模块。
图7示出图1的产品集成模块内的模块。
图8示出根据这里描述的原理的示例性方法的流程图。
图9示出可以被用于操作这里公开的任意模块的示例性运算环境,所述任意模块包括这样的模块的多个部分和/或组合以及个体的这样的模块。
相同的附图标记始终表示相同的元件。
具体实施方式
参照图1,示出具有多个模块10-70的自动化测试系统10。这些模块包括脚本引擎模块20、分布执行框架30、自动化IDE模块40、管理/报告系统模块50、第三方产品集成模块60和产品集成模块70。不是在每个实现方式中都需要所有这些模块。此外,这些模块中的多个部分可以寄宿在一个计算环境内,一个计算环境可以含有多个模块,或者单个实现方式可以包括这两种类型。在一些情况下,单个计算环境可以含有多个模块,这些模块随后为一个或多个其它计算环境(例如一个或多个其它计算机)(在许多情况下位于“无人机群(drone farm)”内,无人机群是指许多这类网路可访问计算机的集合)分派任务(这里也被称为测试或工作)。通常,脚本引擎模块20为底层语言运行时实现提供接口,即,允许以高级脚本语言编写测试的封装器(wrapper)。分布执行框架30允许测试被分配给多个机器并分布在这些机器上。自动化IDE模块40提供例如按文件夹并且根据测试所属的项目来组织测试的功能。管理/报告系统50提供开始、停止及以其它方式调度测试使其在特定时间运行的方式。此外,管理/报告系统50提供检查结果并且浏览历史数据的方式。集成模块60提供将第三方产品合并到系统和方法中的方式。产品集成模块70提供将产品集成在给定应用(例如复杂应用程序如MMO)内的功能。以下更详细地讨论这些模块。
参照图2,示出具有多个组件的脚本引擎模块20。通常,脚本引擎模块20为底层语言运行时实现提供接口。模块允许以高级脚本语言例如JavaScript(R)编写测试或工作,然后将其编译和执行,以允许脚本访问工具中存在的许多底层系统。除了编写脚本自身外,编写脚本可以利用这类脚本可访问的各种本地功能调用。
应该理解,所描述的组件和模块通常可以被设置于将运行测试的客户端系统并且在该客户端系统上实施,结果被报告返回到中央控制器系统,例如,服务器或其它计算环境。然而,在其它实现方式中,可以从控制器或服务器执行测试。例如,可以从客户端系统上游的控制器或其它计算环境执行光学字符识别的步骤。
注意,脚本引擎模块20还可设有多个子系统,这些子系统提供可用于脚本编写任务的特征。在一种实现方式中,提供了模拟输入模块12,它允许多个功能访问系统的本地输入缓冲器,从而允许工具模拟某些输入,就好像现场用户已进行输入一样。这些包括(但不限于)任意组合或时序的键盘输入,包括例如非英语和统一码键盘(Unicode keyboard)、鼠标移动和按钮点击、游戏键盘和游戏杆方向和模拟输入和按钮按压。
脚本引擎模块20还可设有图像分析模块16。通过使用图像分析模块16,系统可以快速扫描输出例如显示器或帧缓冲器,即,以得到在监视器上显示的图像或者其它图像如预渲染图像或位图。以此方式,系统可以实时得到关于图像中当前正在显示什么内容的数据,并且还可以允许基于该信息来评估决定和测试。
如以下更详细描述的,这种图像分析可以通过产生多个线程,例如,通过采用多个核和多个机器来分析图像的一些部分或者分析来自单个图像的多个对象或文本,充分利用系统资源。
所述系统和方法还可设有时间驱动自动化系统22。以此方式,脚本引擎模块20不仅提供分析数据,例如判定游戏中的特定点处是否存在特定图像的方式,而且还提供例如使用事件驱动的或脚本化的逻辑以数据的结果执行任务的方式。换句话讲,所述系统和方法可以执行决定如何操纵这类数据集合的步骤,例如,通过所提供工具的集合产生动作、写出结果、通过编写文本或电子邮件向个人或组报警、或者分析相同数据或派生数据。在一些实现方式中,输入可以从多个源例如图像分析、日志分析(下面描述)等聚集而得,并且被用于做决定并且确定动作。
通过使用这种事件驱动的自动化,不仅可以执行测试,而且可以用显著的人工智能产生“机器人”,机器人可以执行并因此测试各种游戏内任务。这类机器人的组可以执行组任务并且(如果被合适地配置成匹配必要原型)可以执行包括实例(instance)、袭击(raiding)和组请求的组任务。在一个具体的例子中,如果角色的健康值低,则脚本化逻辑可以提供另一个角色“治愈”受伤角色。这种协同测试通常包括多个代码路径共同完成共同目标的情况。
所述系统和方法还可以包括位于一个或多个客户端机器上的日志分析模块14,最开始,在应用程序或测试运行之前,日志分析模块14被传递到客户端机器。日志分析模块14用于实时日志分析,例如,被设置成用于(可选地,实时)分析一个或多个日志文档的解析用工具。然后,可以传递得到的数据,以中央脚本引擎20可用并且可编程式访问的方式,即,脚本可以处理并分析数据,而没有任何进一步独立的解析或重定向。通常,脚本引擎可以预订日志分析并且通过下述的网络API从远程机器接收日志分析。
脚本引擎模块20还可以包括网络API18。以此方式,脚本引擎模块20集成有使用简单消息传递API来报告、分析和通过网络传送的能力。通过这种系统(例如,套接字系统),系统可以从运行工具的其它客户,从上述的远程日志分析模块(例如,服务器日志)、控制器(例如,正管理测试的计算机)收集信息,并且对此做出响应。这样允许进行可以测试多用户系统的定向分布测试,测试团队和/或用户原本会花费许多小时来完成这种测试。
脚本引擎模块20还可以包括光学字符识别(OCR)模块24。OCR模块24为系统和方法提供以下能力:检测屏幕上显示的文本(即使是图像格式)并且测试该文本,看是否是想要显示的文本。所述系统和方法可以通过集成OCR库提供这种能力。以此方式,脚本引擎模块20基于设置资源字体来接收图像并分析图像。接着,可以将这种解析翻译成表单,该表单可以以串数据的形式被提供给脚本,以供后续分析。
参照图3,系统10还可以包括分布执行框架30。分布执行框架30包括多个子系统,这多个子系统中的一个或多个可见于任意给定的实现方式中。
一种这样的子系统是分布任务代理26,它是由运行控制器进程的控制器实现的。控制器管理对客户端机器的测试和任务分布,这些客户端机器也被称为“无人机(drone)”。虽然在一个机器上运行多个测试可能不利地要求大量的计算时间,但是当同时对多个机器进行测试时,这个时间可以明显有利地缩短。已采用根据这里描述的原理的系统和方法通过合适的控制器进程来管理高达一千个客户端系统,但应当理解,这个数量是任意的并且只取决于控制器的能力。
如上所述,每个客户端系统被称为无人机并且每个客户端系统起到任务执行器28的作用。在一种实现方式中,每个单独的无人机能够一次运行一个测试,尽管多核无人机可以在每个核都运行测试。任务代理26(例如,控制器过程)将工作队列中的任务分配给每个无人机,从而确保在工作被视为完成之前执行每个测试。无人机完成它的任务并且将所得的日志返回给任务代理,任务代理接着将留存的日志转发到数据库服务器。
分布执行框架30还可以包括补丁服务器/客户端32。补丁服务器/客户端32为每个客户端执行打补丁步骤,期望在每个工作之前每个无人机运行。在一些实现方式中,在每个无人机已报告其被合适地打补丁并且准备执行工作之前,不能开始工作。以此方式,无人机一直用相同的数据和二进制执行。补丁客户端通常只分发补丁服务器上存在的二进制和文本文档,这些文档通常静态地更新。
分布执行框架30还可以包括用于进程分布和管理的模块34。以此方式,例如,可以利用控制进程和无人机交互来执行与具体应用程序无关的任务。例如,任意二进制可以远程地在无人机上执行并且受任务代理监控。在一个这样实现的系统中,已经采用这种分布执行框架来通过执行多个不同机器的HTTP搜索器来加载测试服务器,这多个不同机器都通过控制进程被同步。通常,可以按这种方式测试或部署任意的应用程序或任务。
参照图4(A),所述系统和方法还可以包括自动化集成开发环境(IDE)40。IDE40可以包括多个模块,并非在每个实现方式中都需要所有这些模块。以下更详细地讨论这些模块。
自动化IDE40可以包括集成测试/数据库管理器36。使用管理器36,工作、测试、任务、测试例等可以按照项目以文件夹层次分布。管理器36可以利用“测试浏览器(Test Explorer)”视图中对应树形元素的菜单,为用户提供创建文件夹、测试、脚本、图像等的能力。数据可以被存储在中央数据库中,并且是一个或多个用户根据访问权限可访问的。在一些实现方式中,所有用户都可以访问数据。
自动化IDE40还可以包括源代码管理器38。源代码管理器38被设置用于保护数据使其免于在锁定时被系统重写。在示例性实现方式中,当第一个用户将文档(例如,脚本)锁定时,其它用户不能改变该文档,直到第一个用户或(例如)被正确许可的另一个用户将文档解锁为止。可以在开始编辑时自动锁定文档。在一些实现方式中,必须在完成编辑时显式解锁文档。
自动化IDE40还可以包括用户管理器42。用户管理器42可以负责使用(例如)用户名字和密码认证用户。在一个实现方式中,这种登录系统可以采用窗口活动目录(Windows Active Directory)来执行认证。根据什么许可与用户相关来控制用户与系统和方法的交互。这类许可可以包括执行、读取和写入等等,不限于此。
自动化IDE40还可以包括图像拍摄模块44。图像拍摄模块44可用来使用引用图像资源的脚本来执行图像检测。可以通过IDE40直接拍摄这类静态图像。一旦拍摄到这类图像,就可以在图像上运行各种测试,以验证图像是否是所期望的那个图像。测试可以包括适于二维图像的测试以及适于三维图像的测试。在任一种情况下,可以为相机角度、相机距离等提供合适的公差。
还可以采用各种其它模块为自动化IDE40提供便利并使其易于使用。例如,使用自动完成模块46,可以利用自动完成热键向用户脚本自动添加功能。用户可以只是键入部分功能名称或单独使用热键来得到脚本引擎和当前脚本可用的功能列表。可以采用文本找寻模块48来定位输入文本串的出现。文本找寻模块48可以可选地匹配整个词、例子,或者可以切换搜索方向。结果可以在搜索窗口中显示,首先按它们出现所在的脚本分组,然后按行号删除。可以搜索文档,在这种情况下,可以搜索待测试的“脚本”文件夹中的所有输入和脚本。脚本大纲模块52可以提供大纲视图。大纲视图可以提供当前打开脚本中定义的功能的按字母顺序排序的概况。另外,可以外部地例如通过输入语句来定义功能,并且还可以用脚本名称来显示和组织功能。脚本引擎函数(例如,提供给JaveScript(R)的C++函数)也可以在专用部分中显示。在这类显示中,函数名称和参数可以按直观的方式显示。
自动化IDE40还可以包括用于语法高亮的系统54。例如,关键词可以被显示为蓝色,从而将其与变量区分开。串字符也可以被显示为特有的颜色。脚本引擎函数也可以用蓝色显现,这样可以立即告知用户在JavaScript(R)文档中未定义这些函数。注释可以用绿色显现,从而指示在执行过程中将跳过注释。应当理解,可以采用任何颜色布置并且以上只是示例性的。
其它可选模块包括自动化IDE40可以具有用于大括号/圆括号匹配的系统56。使用系统56,通过将光标放在大括号或圆括号旁边,可以使对应的大括号/圆括号对高亮显示。当追踪编辑和语法错误时,这尤其有用。如果不匹配,则大括号/圆括号可以用红色显现,从而指示错误。自动化IDE40还可以包括输出控制台58,用户通过输出控制台58可以观察他们的工作成果,例如,脚本的开发。
自动化IED40还可以包括交互式可视化调试器43。用这个模块,可以在代码的各个行设置断点,从而允许开发人员逐步跟踪执行路径,并且查看变量值随时间的变化。参照图4(B)的截图,点击行72中的断点,并且在以下的调试选项卡中显示本地变量的状态。如果操作者激活“单步执行(step over)”按钮,则执行行72,并且行73变成高亮。此时,调试选项卡底部的变量“结果”将会从“未初始化”变成某个值。
自动化IDE40的一些实现方式内的另外特征可以是用于记录和回放用户输入的设施59,也被称为“宏”。这种设施允许系统记录随时间过去的鼠标和键盘输入。然后,随后可以回放这种被记录的输入。在一个例子中,使用Windows
Figure BDA00002957260700101
程序搜索框,可以开始记录,并且记录以下步骤:点击Windows
Figure BDA00002957260700102
开始按钮、键入游戏名称并且点击进入(操作者随后停止记录)。一旦停止了记录,就可以用图4(C)中示出的对话提醒操作者将记录作为资源保存。图4(D)示出具有脚本样本的IDE40的一个实现方式的截图以供参考。
在假设本教导的前提下,本领域的普通技术人员将理解自动化IDE40的其它这类特征。
参照图5并且如上所述,系统10包括管理/报告模块50。管理/报告模块50包括下述的多个模块。如应当理解的,并非在每个实现方式中都需要所有模块。
管理/报告模块50可以包括工作调度器界面64,其中可以调度可包括一个或多个任务或测试的工作。将在用户设置的排定时间执行工作中所有的任务和测试。具体地讲,工作调度器界面64允许用户排定可以运行和重复工作的时间,例如,每小时、每天、每周和每月。还可以提供定制的调度表。
模块50还包括工作管理器界面66。在界面66中,可以中止、开始、停止和删除工作。另外,可以向工作添加任务,并且将任务保存为工作模板。用户可以为每个任务指定多个先决条件,从而允许由非专用测试模板产生高度可定制的测试。无人机的示例性先决条件可以包括CPU、存储器、核、应用程序、DirectX
Figure BDA00002957260700111
版本和许多其它条件。工作管理器界面66可以提供将不把任务分配给没有满足最低要求规格的无人机。
管理/报告模块50还可以包括工作状态界面68,工作状态界面68允许用户在工作正在运行的同时单独查看每个任务,使得可以得到实时状态。例如,用户可以在一目了然的网络界面中查看当前的工作、任务及其当前状态。
模块50还可以包括其它模块和系统,包括用于历史细节/制图的系统72。使用系统72,可以任意地(例如,不确定地)保持任何单独工作的结果和工作规范。可以采用详细漏洞再现/报告系统74,以在出错时向用户呈现系统进行测试所执行的所有步骤。以此方式,可以使人工测试人员能够快速再现漏洞,并且以此方式努力找到解决方法。
存在各种用于追踪软件应用程序的开发或软件应用程序内的漏洞的系统,并且可以采用开发追踪集成模块76将这种追踪软件与这里给出的系统和方法集成。以此方式,在测试执行过程中发现的问题可以自动进入追踪应用程序并且在安装过程中被分配给指定用户。这种开发追踪集成模块76因此大大减少了找到问题至报告问题(具体地讲,之后修复问题)期间的时间量。相反地,可以采用这类系统将需要查看的漏洞告知自动化测试系统,甚至可以致使针对漏洞自动化地生成测试。
参照图6,可以提供集成模块60,以允许与其它第三方应用程序(例如,Selenium(R))集成。例如,在一些实现方式中,根据这里描述的原理的系统和方法可以取决于图像识别,以完成各种自动化功能。网络显示可能特别难以执行内部的自动化。虽然可以使网页和基于网路的效用自动化,但是在一些情况下用一些工具来这样做是不实际的,因为在网络环境中图像和布局常常频繁变化。因此,基于网络的自动化引擎如Selenium(R)可以结合合适的JaveScript(R)封装器使用,以使用网络自动化/JaveScript(R)模块78提供所需的功能。这样提供了很大的方便,因为熟悉编写基于游戏的自动化脚本的用户可能能够利用IDE40基于自动化脚本来编写网页的脚本。这种无缝集成允许各个脚本器适应广泛的自动化需要。在这点上,还要注意,可以适应大多数任何代码语言,只要该语言可以为其创建JavaScript
Figure BDA00002957260700121
绑定即可。
在Selenium(R)的特定情况下,在能够执行各个脚本之前,通常将各个脚本分配给每个机器。通过将Selenium(R)与系统10集成,不需要单独分布,因为由于IDE40中存在的集成源代码管理,导致任何客户通常立即得知新脚本,图6中用模块82示出这个例程。
参照图7,示出向特定应用程序提供集成的产品集成模块70。产品集成模块70包括套接字驱动API84,套接字驱动API84允许根据需要与外部资源通信。产品集成模块还包括集成器模块86,集成器模块86与游戏管理客户端(也被称为“测试客户端”)进行数据通信,这是指通常包括激活没有向公众发布的某些特征的能力的给定游戏的内部构建。然后,这允许以更及时的方式测试游戏的电脑游戏玩法特征,并且允许出现这些方面的特定量的顾客服务。
要注意,除了以上模块之外,通常采用预定协议,让一组消息在模块之间传递,使其交互。该协议可以是已知的,例如,XML、TCP等。该协议不需要是网络层如套接字专用的,尽管该协议是方便的通信手段。系统可以采用“钩子”或其它中间机制来交换数据。这样不需要只是一种方式-游戏过程可以自身提供原始数据(如,游戏世界中角色的位置)作为输出消息。为了通过网络套接字将管理者或测试员级别的命令传递到游戏中,在当前系统中已经采用了这类机制,而所述命令通常将不得不通过模拟按键输入。
图8是示例性流程图80,其示出根据这里描述的原理的方法的一种实现方式。应当理解,可以在任何给定实现方式中执行更多或更少的步骤。对于任何给定实现方式通常可选的步骤用虚线示出。
第一个步骤是显示潜在测试的列表(步骤88),每个测试与测试脚本相关。随后,从列表接收对测试的选择(步骤94)。要注意,用户可以使用如上所述的IDE创建供测试的测试脚本,而不是由用户选择测试。另外可选择地,可以在报错(如,可能通过日志分析而出现)时产生测试和测试脚本(步骤92)。此外,虽然流程图80指示采用单独测试,但是应当理解,流程图涵盖采用任务或工作,其中工作是许多任务或测试的组合。
然后,要么人工地要么自动地,将所选择的测试分配给客户端装置,即,无人机(步骤96)。例如,用户可能希望在特定无人机上运行特定测试,并且可能在这个步骤中将测试导向或分配给无人机。另外可选择地,系统可以看到,特定无人机适于该测试并且自动地分配无人机。在又一个替代形式中,可以将测试分配给客户端或无人机内的特定核。
然后,测试脚本在应用程序的实例化内运行(步骤102)。例如,测试脚本可以在也正在运行待测试的应用程序的无人机上运行。测试脚本通常提供任务,以执行(例如)按钮点击或对图像或文本的查阅。脚本可以包括来自键盘、鼠标、游戏平板、游戏控制器输入的模拟UI输入。
然后,分析正在运行的无人机上的客户端进程的输出状态,以确定运行的测试脚本的结果(步骤104)。在这个分析中可以采用多种步骤。例如,可以执行对象识别(步骤108),其中,相对于实际在显示器中显现的那些对象,测试预期在显示器中显现的对象。在这个步骤中,可以允许三维对象由于旋转而具有一定程度的公差,也允许由于相机或观众和对象之间的表观距离变化量而导致的公差。换句话讲,为了解决由于距离导致的大小变化。这个步骤108将通常涉及对帧缓冲器的分析。另一个潜在步骤是对在场景中检测到的文本执行光学字符识别(步骤112)。换句话讲,对于在图像文档中出现的文本,可以执行OCR,以将图像转换成可以与文本数据库进行对比的文本数据。这可能特别适用于测试本地化以确保外语等同物。这个步骤还可以涉及分析帧缓冲器。可以执行的另一个步骤是分析日志以验证或推断结果(步骤114)。例如,可以分析日志,以验证在合适时间出现的图像或对象。在另一个例子中,可以分析日志,以推测出现给定误差,因此日志可以用作自动创建的测试的基础。日志还可以用作软件开发追踪应用程序的输入,用于打开特定误差上的标签并因此开始解决方案和测试循环。通常,日志分析不涉及分析帧缓冲器。重要的是要注意,步骤104、108、112和114通常作为播送测试脚本执行的活动步骤运行,因为它们的输出常常反馈回脚本中。
在完成时,最后一步是将结果返回给用户或管理模块,以及例如显示被分配的测试的结果(步骤116)。结果可以用多种方式显示,并且通常将多个测试的结果连同测试运行的指示、被分配了测试的无人机等一起显示。
应当理解,上述服务器通常根据环境被视为服务器或控制器。在游戏测试的环境中,运行游戏引擎和应用程序的服务器通常是游戏服务器,而控制器和控制进程可以在服务器或其它计算环境上实例化。客户端装置或无人机可以选自任何数量的计算环境,包括桌面型计算机、膝上型计算机、平板计算机、手持计算机、智能电话、因特网工具、游戏操作台、媒体PC、手持游戏装置等。
一种实现方式包括一个或多个可编程处理器和对应的计算系统组件,用于存储和执行计算机指令,例如,用于执行提供以上公开和讨论的各种功能模块的代码。参照图8,示出示例性计算环境的代表,它可以代表一个或多个计算环境操作模块10、20、30、40、50、60或70。
计算环境包括控制器118、内存122、存储装置126、媒体装置132、用户接口138、输入/输出(I/O)接口142和网络接口144。这些组件通过通用总线146相互连接。另外可选择地,可以使用不同的连接配置,例如控制器在中心的星形模式。
控制器118包括可编程处理器并且控制计算环境及其组件的运行。控制器118装载来自内存124或内嵌式控制器内存(未示出)的指令,并执行这些指令来控制测试系统120。
可以包括非暂态计算机可读存储器122的内存124存储供系统的其它组件暂时使用的数据。在一种实现方式中,内存124被实现为DRAM。在其它实现方式中,内存124还包括长期或永久存储器,例如闪存和/或ROM。
可以包括非暂态计算机可读存储器128的存储器126存储供计算环境的其它组件暂时或长期使用的数据,例如,存储供系统使用的数据。在一种实现方式中,存储器126是硬盘驱动或固态驱动。
可以包括非暂态计算机可读存储器134的媒体装置132接收可移动媒体并且从插入的媒体读取数据或向插入的媒体写入数据。在一种实现方式中,媒体装置132是光盘驱动或例如可写入Blu-ray光盘驱动的光盘刻录机136。
用户接口138包括用于接收用户输入(例如,测试脚本、工作、运行工作的无人机、测试频率、工作调度等的用户指示)。在一种实现方式中,用户接口138包括键盘、鼠标、音频扬声器和显示器。控制器118使用用户的输入来调节计算环境的运行。
I/O接口142包括连接对应的I/O装置(例如,外部存储器或补充装置,例如打印机或PDA)的一个或多个I/O端口。在一种实现中,I/O接口142的端口包括例如USB端口、PCMCIA端口、串行端口和/或并行端口的端口。在另一种实现方式中,I/O接口142包括用于与外部装置进行无线通信的无线接口。可以采用这些I/O接口连接一个或多个无人机。
网络接口144允许与局域网连接并且包括有线和/或无线网络连接,例如RJ-45或以太网连接或“WiFi”接口(802.11)。应当理解,数种其它类型的网络连接是可能的,包括WiMax、3G或4G、802.15协议、802.16协议、卫星、Bluetooth
Figure BDA00002957260700161
等。还可以采用这类网络连接来连接无人机。
计算环境可以包括具有这类设备特征的额外硬件和软件,例如功率和操作系统,尽管简便起见在图中未具体地示出这些组件。在其它实现方式中,可以使用设备的不同构造,例如不同的总线或存储器构造或多处理器构造。
根据这里描述的原理的系统和方法提供了一种对大型复杂应用程序进行方便和全面测试的方式。以此方式,人工测试员可能能够集中于寻找应用程序中的新漏洞或错误,而不只是验证预期的功能,可以用测试脚本对所述功能进行有效建模。然而,要注意,以上描述本质上只是示例性的,并且在假设以上教导的情况下,本领域的普通技术人员将理解,落入本发明范围内的变形形式是可能的。例如,不同于测试游戏应用程序,可以测试任何数量的其它这类应用程序。此外,测试可以不只限于应用程序。确切地,测试可以被配置用于例如通过测试服务器负载等来测试硬件。可以进行一个任务来运行多个机器以供统计分析以及测试不同计算环境中的任务的测试性能。另外可选择地,任务的不同部分可以在不同的机器上运行。另外,用合适的音频缓冲和音频识别软件,可以不只测试应用程序的视觉方面而且可以测试应用程序的音频方面。
虽然已经描述了PC型计算环境,但是也可以自动测试控制台应用程序。例如,可以采用个人计算机创建输入,如可以针对控制台游戏板模拟的。这可以按无线方式例如通过Bluetooth
Figure BDA00002957260700162
、按有线方式或者按其它方式通信。控制台显示器可以涉及PC监视器,并且可以采用所得的帧缓冲器来测试模拟输入所鼓动的动作的结果。
因此,本发明不仅限于上面描述的这些实现方式。

Claims (22)

1.一种测试应用程序的至少一部分的方法,该应用程序的实例化在多个计算装置的每个上运行,所述方法包括:
a.显示潜在测试的列表,每个测试与测试脚本相关联;
b.接收对所述列表中的测试的选择;
c.将所选择的测试分配给所述多个计算装置中的一个计算装置;
d.在所述应用程序的实例化内在所述多个计算装置中的一个计算装置上运行测试脚本;以及
e.分析所述多个计算装置中的所述一个计算装置的输出,以确定运行的测试脚本的结果。
2.根据权利要求1所述的方法,其中分配所选择的测试的步骤包括接收输入,该输入指示所述多个计算装置中要运行测试脚本的一个计算装置。
3.根据权利要求1所述的方法,其中分析输出的步骤包括分析帧缓冲器。
4.根据权利要求1所述的方法,其中分析输出的步骤包括分析存储器状态或检查网络包。
5.根据权利要求1所述的方法,其中分配所选择的测试的步骤包括确定所述多个计算装置中要运行测试脚本的一个计算装置,确定的步骤包括确定所述多个计算装置中能够运行所述测试脚本并且当前没有运行另一个测试脚本的一个计算装置。
6.根据权利要求1所述的方法,其中接收和分配的步骤包括接收对第一测试的选择并且将所选择的第一测试分配给所述多个计算装置中的第一计算装置,并且还包括接收对所述列表中的第二测试的选择,并且将所选择的第二测试分配给所述多个计算装置中的所述一个计算装置或者分配给所述多个计算装置中的另一个计算装置。
7.根据权利要求1所述的方法,其中接收和分配的步骤包括接收对第一测试的选择并且将所选择的第一测试分配给所述多个计算装置中的所述一个计算装置上的第一线程,并且还包括接收对所述列表中的第二测试的选择,并且将所选择的第二测试分配给所述多个计算装置中的所述一个计算装置上的第二线程。
8.根据权利要求1所述的方法,还包括分析日志以确定与所述结果相关的至少一个操作参数。
9.根据权利要求1所述的方法,其中所述结果是空结果。
10.根据权利要求1所述的方法,其中所述结果是错误消息。
11.根据权利要求1所述的方法,还包括显示所述结果的指示。
12.根据权利要求3所述的方法,其中所述测试脚本导致对帧缓冲器内所显示的文本的光学字符识别的步骤。
13.根据权利要求3所述的方法,其中所述测试脚本导致对所述帧缓冲器内的对象的对象识别的步骤。
14.根据权利要求1所述的方法,其中所述测试脚本导致模拟来自鼠标、键盘或游戏板的输入的步骤。
15.根据权利要求1所述的方法,还包括在从软件开发追踪应用程序接收到报错时,产生测试脚本。
16.根据权利要求6所述的方法,还包括显示与被分析的输出和被分析的日志对应的组合结果。
17.根据权利要求1所述的方法,还包括从所述列表选择另一个测试,所述另一个测试是基于所述结果选择的,将所述另一个测试分配给所述多个计算装置中的所述一个计算装置,在所述应用程序的实例化内在所述多个计算装置中的所述一个计算装置上运行与所述另一个测试相关联的测试脚本,并且分析所述多个计算装置中的所述一个计算装置的输出,以确定运行的与所述另一个测试相关联的测试脚本的结果。
18.根据权利要求17所述的方法,其中所述测试和所述另一个测试模拟机器人的动作。
19.根据权利要求18所述的方法,其中模拟多个这种机器人的动作。
20.根据权利要求19所述的方法,其中被模拟的机器人被配置为完成单组目标。
21.根据权利要求1所述的方法,其中所述测试与工作相关联,并且其中所述工作包括多个测试。
22.一种非暂态计算机可读介质,包括用于使计算装置执行根据权利要求1所述的方法的指令。
CN201310094744XA 2012-03-30 2013-03-25 自动测试的系统和方法 Pending CN103365773A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/434,929 2012-03-30
US13/434,929 US20130263090A1 (en) 2012-03-30 2012-03-30 System and method for automated testing

Publications (1)

Publication Number Publication Date
CN103365773A true CN103365773A (zh) 2013-10-23

Family

ID=49236826

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310094744XA Pending CN103365773A (zh) 2012-03-30 2013-03-25 自动测试的系统和方法

Country Status (2)

Country Link
US (1) US20130263090A1 (zh)
CN (1) CN103365773A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335278A (zh) * 2014-06-16 2016-02-17 阿里巴巴集团控股有限公司 测试方法及设备
CN108351828A (zh) * 2015-06-26 2018-07-31 英特尔公司 用于设备无关的自动应用测试的技术
CN109783287A (zh) * 2018-12-28 2019-05-21 北京五维星宇科技有限公司 基于配置文件的测试指令生成方法、系统、终端及介质
CN110891044A (zh) * 2018-09-11 2020-03-17 中国科学院信息工程研究所 一种网络测试场景中的npc生成及刻画方法
CN111213142A (zh) * 2017-10-12 2020-05-29 罗德施瓦兹两合股份有限公司 多用户测试系统和用于配置多用户测试系统的方法
CN111556993A (zh) * 2017-12-20 2020-08-18 雨林质量保证公司 电子产品测试系统和方法
US11312506B2 (en) * 2019-03-21 2022-04-26 Performance Drone Works Llc Autonomous quadcopter piloting controller and debugger
US11409291B2 (en) 2019-03-21 2022-08-09 Performance Drone Works Llc Modular autonomous drone
US11455336B2 (en) 2019-03-21 2022-09-27 Performance Drone Works Llc Quadcopter hardware characterization and simulation
CN116205783A (zh) * 2023-04-24 2023-06-02 芯瞳半导体技术(山东)有限公司 一种基于gpu着色器代码的调试方法、装置及存储介质
US11721235B2 (en) 2019-03-21 2023-08-08 Performance Drone Works Llc Quadcopter sensor noise and camera noise recording and simulation

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819631B2 (en) * 2011-01-13 2014-08-26 Hewlett-Packard Development Company, L.P. System and method for self dependent web automation
US9015666B2 (en) * 2012-07-11 2015-04-21 International Business Machines Corporation Updating product documentation using automated test scripts
US8972941B2 (en) * 2012-07-18 2015-03-03 International Business Machines Corporation Integrated development environment-based workload testing in a networked computing environment
US9630108B2 (en) * 2013-04-01 2017-04-25 Tencent Technology (Shenzhen) Company Limited Method and apparatus for testing game data
US20150026665A1 (en) * 2013-07-17 2015-01-22 Ebay Inc. Automated test on applications or websites in mobile devices
US10176067B1 (en) * 2014-05-29 2019-01-08 Amazon Technologies, Inc. On-demand diagnostics in a virtual environment
CN104407978A (zh) * 2014-12-12 2015-03-11 浪潮(北京)电子信息产业有限公司 一种软件自动化测试方法和装置
CN105988924B (zh) * 2015-02-10 2018-12-28 中国船舶工业综合技术经济研究院 一种非侵入式嵌入式软件图形用户界面自动化测试方法
US10409564B2 (en) * 2015-08-03 2019-09-10 Microsoft Technology Licensing, Llc Recording and playback of development sessions
US9582250B1 (en) 2015-08-28 2017-02-28 International Business Machines Corporation Fusion recommendation for performance management in streams
WO2017049649A1 (en) * 2015-09-26 2017-03-30 Intel Corporation Technologies for automated application exploratory testing
US10726363B2 (en) * 2016-06-16 2020-07-28 International Business Machines Corporation Ticket event modification for a problem tracking system ticket
US10226708B2 (en) 2016-06-30 2019-03-12 Electronic Arts Inc. Interactive gameplay playback system
US11000771B1 (en) * 2017-03-30 2021-05-11 Electronic Arts Inc. Gameplay telemetry and video acquisition system
CN108733555A (zh) * 2017-04-25 2018-11-02 中移信息技术有限公司 一种应用测试方法及装置
CN107220174B (zh) * 2017-05-08 2020-01-03 飞天诚信科技股份有限公司 一种自动化测试的方法及装置
US10261892B2 (en) * 2017-05-24 2019-04-16 Bank Of America Corporation Cloud-based automated test execution factory
CN109189682B (zh) * 2018-08-27 2022-03-22 北京云测信息技术有限公司 一种脚本录制方法和装置
GB2578784A (en) * 2018-11-09 2020-05-27 Sony Interactive Entertainment Inc Data processing system and method
WO2020143030A1 (en) 2019-01-11 2020-07-16 Entit Software Llc Test script generation based on event data and video frames
US20220171698A1 (en) * 2019-04-11 2022-06-02 Warner Bros. Entertainment Inc. Scalable simulation and automated testing of mobile videogames
US11150882B2 (en) * 2019-10-14 2021-10-19 UiPath Inc. Naming robotic process automation activities according to automatically detected target labels
EP3961436A1 (en) * 2020-08-28 2022-03-02 Siemens Aktiengesellschaft Methods and systems for controlling access to at least one computer program
CN112765041B (zh) * 2021-02-04 2024-04-05 上海硬通网络科技有限公司 游戏自动化测试方法、装置及电子设备
US20230385182A1 (en) * 2022-05-31 2023-11-30 Atlassian Pty Ltd. Machine-learning-based techniques for predictive monitoring of a software application framework

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304982B1 (en) * 1998-07-14 2001-10-16 Autodesk, Inc. Network distributed automated testing system
CN1678982A (zh) * 2002-09-30 2005-10-05 微软公司 使用户界面元素对应用程序和用户已知的系统和方法
US20070168970A1 (en) * 2005-11-07 2007-07-19 Red Hat, Inc. Method and system for automated distributed software testing
US20090007074A1 (en) * 2007-06-26 2009-01-01 Sean Campion System and method for distributed software testing
US20110167413A1 (en) * 2010-01-04 2011-07-07 Hyo-Young Kim Coverage apparatus and method for testing multi-thread environment

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5437024A (en) * 1992-07-06 1995-07-25 French; Donald H. Selective computer-generated information distribution system by computer peripheral emulation and use
US5600789A (en) * 1992-11-19 1997-02-04 Segue Software, Inc. Automated GUI interface testing
US5703788A (en) * 1995-06-07 1997-12-30 Lsi Logic Corporation Configuration management and automated test system ASIC design software
US6662217B1 (en) * 1999-01-19 2003-12-09 Microsoft Corporation Distributed and automated test administration system for administering automated tests on server computers over the internet
US6615369B1 (en) * 2000-01-31 2003-09-02 Agilent Technologies, Inc. Logic analyzer with trigger specification defined by waveform exemplar
US7110152B2 (en) * 2001-08-31 2006-09-19 Hewlett-Packard Development Company, L.P. Virtual scanning from a scanned image preview
US7020699B2 (en) * 2001-09-11 2006-03-28 Sun Microsystems, Inc. Test result analyzer in a distributed processing framework system and methods for implementing the same
US7546584B2 (en) * 2003-06-16 2009-06-09 American Megatrends, Inc. Method and system for remote software testing
JP2007535723A (ja) * 2003-11-04 2007-12-06 キンバリー クラーク ワールドワイド インコーポレイテッド 複合ソフトウエアシステムを実施して検証するための自動多次元追跡可能性行列を含む試験ツール
US7908313B2 (en) * 2004-07-21 2011-03-15 The Mathworks, Inc. Instrument-based distributed computing systems
US7779302B2 (en) * 2004-08-10 2010-08-17 International Business Machines Corporation Automated testing framework for event-driven systems
US8141043B2 (en) * 2005-01-11 2012-03-20 Worksoft, Inc. Automated business process testing that spans multiple platforms or applications
US20060265492A1 (en) * 2005-05-17 2006-11-23 Morris Daniel E On-demand test environment using automated chat clients
US7894477B2 (en) * 2006-02-22 2011-02-22 Jds Uniphase Corporation Framing mobile communication signals for analysis
US8522214B2 (en) * 2006-05-16 2013-08-27 Open Text S.A. Keyword based software testing system and method
JP4975544B2 (ja) * 2007-07-20 2012-07-11 富士通セミコンダクター株式会社 シミュレーション装置及びプログラム
US8127237B2 (en) * 2007-09-24 2012-02-28 Sap Ag Active business client
US8185910B2 (en) * 2008-08-27 2012-05-22 Eric Sven-Johan Swildens Method and system for testing interactions between web clients and networked servers
US9836376B2 (en) * 2009-09-24 2017-12-05 Contec, Llc Method and system for automated test of end-user devices
US20110214163A1 (en) * 2010-02-26 2011-09-01 Jumpstart Digital Marketing, Inc. (d.b.a. Jumpstart Automotive Media) Automated analysis of cookies
US9582166B2 (en) * 2010-05-16 2017-02-28 Nokia Technologies Oy Method and apparatus for rendering user interface for location-based service having main view portion and preview portion
US10013338B2 (en) * 2010-09-24 2018-07-03 Waters Technologies Corporation Techniques for automated software testing
WO2012167190A1 (en) * 2011-06-02 2012-12-06 Versata Development Group, Inc. End user remote enterprise application software testing
US8819488B1 (en) * 2011-06-15 2014-08-26 Amazon Technologies, Inc. Architecture for end-to-end testing of long-running, multi-stage asynchronous data processing services
US9942124B2 (en) * 2011-06-28 2018-04-10 Time Warner Cable Enterprises Llc Apparatus and methods for automated device testing in content distribution network
US9396094B2 (en) * 2011-07-21 2016-07-19 International Business Machines Corporation Software test automation systems and methods
US8812911B2 (en) * 2012-03-16 2014-08-19 Rackspace Us, Inc. Distributed testing of a software platform

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6304982B1 (en) * 1998-07-14 2001-10-16 Autodesk, Inc. Network distributed automated testing system
CN1678982A (zh) * 2002-09-30 2005-10-05 微软公司 使用户界面元素对应用程序和用户已知的系统和方法
US20070168970A1 (en) * 2005-11-07 2007-07-19 Red Hat, Inc. Method and system for automated distributed software testing
US20090007074A1 (en) * 2007-06-26 2009-01-01 Sean Campion System and method for distributed software testing
US20110167413A1 (en) * 2010-01-04 2011-07-07 Hyo-Young Kim Coverage apparatus and method for testing multi-thread environment

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105335278A (zh) * 2014-06-16 2016-02-17 阿里巴巴集团控股有限公司 测试方法及设备
CN108351828A (zh) * 2015-06-26 2018-07-31 英特尔公司 用于设备无关的自动应用测试的技术
CN111213142B (zh) * 2017-10-12 2023-07-14 罗德施瓦兹两合股份有限公司 多用户测试系统和用于配置多用户测试系统的方法
CN111213142A (zh) * 2017-10-12 2020-05-29 罗德施瓦兹两合股份有限公司 多用户测试系统和用于配置多用户测试系统的方法
CN111556993A (zh) * 2017-12-20 2020-08-18 雨林质量保证公司 电子产品测试系统和方法
CN110891044B (zh) * 2018-09-11 2021-04-27 中国科学院信息工程研究所 一种网络测试场景中的npc生成及刻画方法
CN110891044A (zh) * 2018-09-11 2020-03-17 中国科学院信息工程研究所 一种网络测试场景中的npc生成及刻画方法
CN109783287A (zh) * 2018-12-28 2019-05-21 北京五维星宇科技有限公司 基于配置文件的测试指令生成方法、系统、终端及介质
US11312506B2 (en) * 2019-03-21 2022-04-26 Performance Drone Works Llc Autonomous quadcopter piloting controller and debugger
US11409291B2 (en) 2019-03-21 2022-08-09 Performance Drone Works Llc Modular autonomous drone
US11455336B2 (en) 2019-03-21 2022-09-27 Performance Drone Works Llc Quadcopter hardware characterization and simulation
US11721235B2 (en) 2019-03-21 2023-08-08 Performance Drone Works Llc Quadcopter sensor noise and camera noise recording and simulation
CN116205783A (zh) * 2023-04-24 2023-06-02 芯瞳半导体技术(山东)有限公司 一种基于gpu着色器代码的调试方法、装置及存储介质
CN116205783B (zh) * 2023-04-24 2023-08-18 芯瞳半导体技术(山东)有限公司 一种基于gpu着色器代码的调试方法、装置及存储介质

Also Published As

Publication number Publication date
US20130263090A1 (en) 2013-10-03

Similar Documents

Publication Publication Date Title
CN103365773A (zh) 自动测试的系统和方法
US10162612B2 (en) Method and apparatus for inventory analysis
US9846638B2 (en) Exposing method related data calls during testing in an event driven, multichannel architecture
CN102279791B (zh) 用户界面清单
US10678666B1 (en) Method and system for implementing automated test and retest procedures in a virtual test environment
Grieskamp et al. Model‐based quality assurance of protocol documentation: tools and methodology
US10095488B2 (en) Expressive generic model technology
CN100492316C (zh) 测试自动化的系统和方法
US10877874B2 (en) Systems and methods for modeling and generating test requirements for software applications
US8448146B2 (en) Generation of functional tests for re-hosted applications
CN105389251A (zh) 结构化查询语言调试器
CN108959068A (zh) 软件界面测试方法、设备及存储介质
CN105074671A (zh) 用于在内核模块和设备驱动程序中检测并发编程错误的方法和系统
Barbosa et al. Test case generation from mutated task models
Remenska et al. Using model checking to analyze the system behavior of the LHC production grid
Koch et al. BIM-based augmented reality for facility maintenance using natural markers
WO2015116225A2 (en) Test automation modeling
US20230339102A1 (en) System, apparatus, and method for deploying robotic process automations across multiple operating systems
Quadri Framework for Automation of Software Testing for Web Application in Cloud-(FASTEST) Web Application
CN118095756A (zh) 一种轨道交通车辆运维管理系统及方法
Velozo et al. Evaluation of a Mobile Software Development Company
Kim et al. Development of a Web-based Test Procedure Authoring and Execution Environment for Space Systems
CN117055940A (zh) 应用巡检方法及系统
Magdum et al. Mobile Application of Pet Adoption System
Han et al. Research of Software Model Method Oriented to CMMI System

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: American California

Applicant after: DAWN GAMES LLC

Address before: American California

Applicant before: Sony Online Entertainment LLC

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SONY ONLINE ENTERTAINMENT LLC TO: DAWN GAMES LLC

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20131023