CN106899441A - 故障节点定位方法及装置 - Google Patents

故障节点定位方法及装置 Download PDF

Info

Publication number
CN106899441A
CN106899441A CN201710156100.7A CN201710156100A CN106899441A CN 106899441 A CN106899441 A CN 106899441A CN 201710156100 A CN201710156100 A CN 201710156100A CN 106899441 A CN106899441 A CN 106899441A
Authority
CN
China
Prior art keywords
tree
malfunctioning node
operation action
action tree
node
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.)
Granted
Application number
CN201710156100.7A
Other languages
English (en)
Other versions
CN106899441B (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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network Co 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN201710156100.7A priority Critical patent/CN106899441B/zh
Publication of CN106899441A publication Critical patent/CN106899441A/zh
Application granted granted Critical
Publication of CN106899441B publication Critical patent/CN106899441B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开是关于一种故障节点定位方法及装置,该方法包括:利用一网络消息服务器接收一测试客户端发送的包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息;通过网络消息服务器将RPC信息发送至一行为树运行服务器中,并由行为树运行服务器根据行为树标识获取待运行行为树;以及利用行为树运行服务器将待运行行为树加载至一NPC场景中,并根据运行方式运行待运行行为树以得到一与待运行行为树关联的运行结果;利用网络消息服务器接收运行结果并将运行结果发送至测试客户端以使得测试客户端对运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。该方法可以节省时间成本。

Description

故障节点定位方法及装置
技术领域
本公开涉及软件测试技术领域,具体而言,涉及一种故障节点定位方法以及一种故障节点定位装置。
背景技术
随着网络技术的发展,网络游戏也越来越受到欢迎。但是,不管是端游还是手游,都可以包括一些类似于NPC(Non-Player-Controlled Character,非玩家控制角色)、副本里的怪物等游戏角色,而这些游戏角色都可以利用一套固定的逻辑来进行控制,使得这些游戏角色可以模拟真实的人物行为。上述游戏行为可以被称之为AI(人工智能,ArtificialIntelligence)行为。
在任一游戏中,小到一个副本的小怪,大到一个副本里的大BOSS,都可以利用不同复杂程度的AI行为来控制。并且,随着小怪以及大BOSS数量的增加,AI行为的数量也在增加;因此,一个大型的游戏可能包含有成百上千个不同的AI行为逻辑。在游戏的开发中,一个AI行为可以通过一个基于XML(可扩展标记语言,Extensible Markup Language)格式的文本来进行控制,类似于计算机中常见的多叉树结构,该XML文本以树的结构组织每个AI的行为逻辑;并且,每个AI表现出来的每个动作或者每个行为,都是这个AI行为树的一个分支上的不同节点;每个AI行为树可以包括几个分支或者几个节点;也可以包括几十、几百个分支或者节点。
对于一个游戏来说,保证小怪或者大BOSS的AI行为正确无误是非常重要的。因此,为了保证小怪或者大BOSS的AI行为正确无误,在游戏正式上线之前,是需要经过测试的。那么,如果当一个测试人员发现某一AI行为有异常或者不正确的时候,如何定位该AI行为的BUG,尤其在游戏上线前,当你面对一个分支和节点非常庞大的AI行为树时,如何高效率地定位到BUG,是相当重要的。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种故障节点定位方法以及一种故障节点定位装置,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开的一个方面,提供一种故障节点定位方法,包括:
利用一网络消息服务器接收一测试客户端发送的包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息;
通过所述网络消息服务器将所述RPC信息发送至一行为树运行服务器中,并由所述行为树运行服务器根据所述行为树标识获取待运行行为树;以及
利用所述行为树运行服务器将所述待运行行为树加载至一NPC场景中,并根据所述运行方式运行所述待运行行为树以得到一与所述待运行行为树关联的运行结果;
利用所述网络消息服务器接收所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
在本公开的一种示例性实施例中,所述运行方式包括单步联机执行单次行为树运行、多步联机执行单次行为树运行、单步联机执行多次行为树运行以及多步联机执行多次行为树运行中的一种或多种。
在本公开的一种示例性实施例中,根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果包括:
根据所述运行方式运行所述待运行行为树,并对所述待运行行为树上已经运行的各节点进行标识;
当所述待运行行为树上的各所述节点均完成标识时,得到与所述待运行行为树关联的运行结果。
在本公开的一种示例性实施例中,在根据所述运行方式运行所述待运行行为树前还包括:
为所述待运行行为树配置一预设运行时间以及一预设间隔运行时间。
在本公开的一种示例性实施例中,在得到与所述待运行行为树关联的运行结果后还包括:
将与所述待运行行为树关联的运行结果发送至一网络消息服务器中。
在本公开的一种示例性实施例中,所述故障节点定位方法还包括:
为游戏客户端配置一IP地址以及一端口号并将所述IP地址以及所述端口号发送至所述测试客户端;
当所述测试客户端开启时,通过所述IP地址以及所述端口号建立与所述游戏客户端的连接。
在本公开的一种示例性实施例中,所述故障节点定位方法还包括:
删除所述待运行行为树中与待定位故障节点关联的分支无关的其他分支。
在本公开的一种示例性实施例中,所述故障节点定位方法还包括:
为所述待运行行为树中与待定位故障节点关联的分支增加阻碍节点。
在本公开的一种示例性实施例中,所述故障节点定位方法还包括:
为所述待运行行为树中与待定位故障节点关联的分支增加输入和/或输出节点。
根据本公开的一个方面,提供一种故障节点定位装置,包括:
测试客户端,用于向网络消息服务器发送包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息;
网络消息服务器,用于接收所述RPC信息并将所述RPC信息发送至一行为树运行服务器中;
行为树运行服务器,用于接收所述RPC信息并根据所述行为树标识获取待运行行为树,以及,将所述待运行行为树加载至一NPC场景中,然后根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果;
所述网络消息服务器还用于,获取所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
在本公开的一种示例性实施例中,所述运行方式包括单步联机执行单次行为树运行、多步联机执行单次行为树运行、单步联机执行多次行为树运行以及多步联机执行多次行为树运行中的一种或多种。
在本公开的一种示例性实施例中,根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果包括:
根据所述运行方式运行所述待运行行为树,并对所述待运行行为树上已经运行的各节点进行标识;
当所述待运行行为树上的各所述节点均完成标识时,得到与所述待运行行为树关联的运行结果。
在本公开的一种示例性实施例中,在根据所述运行方式运行所述待运行行为树前还包括:
为所述待运行行为树配置一预设运行时间以及一预设间隔运行时间。
在本公开的一种示例性实施例中,在得到与所述待运行行为树关联的运行结果后还包括:
将与所述待运行行为树关联的运行结果发送至一网络消息服务器中。
在本公开的一种示例性实施例中,所述故障节点定位装置还包括:
配置模块,用于为游戏客户端配置一IP地址以及一端口号并将所述IP地址以及所述端口号发送至所述测试客户端;
连接模块,用于当所述测试客户端开启时,通过所述IP地址以及所述端口号建立与所述游戏客户端的连接。
在本公开的一种示例性实施例中,所述故障节点定位装置还包括:
删除模块,用于删除所述待运行行为树中与待定位故障节点关联的分支无关的其他分支。
在本公开的一种示例性实施例中,所述故障节点定位装置还包括:
第一节点增加模块,用于为所述待运行行为树中与待定位故障节点关联的分支增加阻碍节点。
在本公开的一种示例性实施例中,所述故障节点定位装置还包括:
第二节点增加模块,用于为所述待运行行为树中与待定位故障节点关联的分支增加输入和/或输出节点。
本公开一种故障节点定位方法及装置,通过接收一测试客户端发送的RPC信息然后将RPC信息发送至一行为树运行服务器中,行为树运行服务器接收RPC信息后根据行为树标识获取待运行行为树然后将待运行行为树加载至一NPC场景中,并根据运行方式运行待运行行为树后得到一运行结果;将运行结果发送至测试客户端以使得测试客户端对运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点;一方面,通过按照预设的运行方式运行待运行行为树并得到运行结果,使得测试人员可以得到预期的运行结果,更加快速的定位到故障节点,提高了故障节点的定位速度,节省了时间成本;另一方面,测试客户端获取运行结果后对运行结果进行差异性的绘制,使得测试人员可以直接的找出所有的故障节点,避免了故障节点的遗漏,使得游戏的运行更加顺畅,提高了用户体验;进一步的,通过发送RPC信息,采用远程过程调用协议进行通信,不但可以保证测试客户端以及游戏客户端的安全,而且可以实现跨语言平台调用,使得测试更加方便。
本公开一种故障节点定位方法及装置,通过为行为树设置运行时间以及间隔运行时间,使得行为树可以停止在某一步或者某一次思考,调试定位故障节点也更加容易;并且,行为树在执行完上一次运行后,可以间隔一段时间再进行下一次运行,使得测试人员可以在此段间隔时间内进行修正,提高了测试人员的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出一种故障节点定位方法的流程图。
图2示意性示出一种待运行行为树的示例图。
图3示意性示出待运行行为树运行的方法流程图。
图4示意性示出一种待运行行为树的运行结果图。
图5示意性示出预设运行时间以及预设间隔时间设置的示例图。
图6示意性示出另一种故障节点定位方法的流程图。
图7示意性示出另一种待运行行为树的示例图。
图8示意性示出一种为待运行行为树增加阻碍节点的示例图。
图9示意性示出一种故障节点定位装置的方框图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种故障节点定位方法。参考图1所示,该故障节点定位方法可以包括以下步骤:
步骤S110.利用一网络消息服务器接收一测试客户端发送的包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息。
步骤S120.通过所述网络消息服务器将所述RPC信息发送至一行为树运行服务器中,并由所述行为树运行服务器根据所述行为树标识获取待运行行为树。
步骤S130.利用所述行为树运行服务器将所述待运行行为树加载至一NPC场景中,并根据所述运行方式运行所述待运行行为树以得到一与所述待运行行为树关联的运行结果。
步骤S140.利用所述网络消息服务器接收所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
在上述故障节点定位方法中,一方面,通过按照预设的运行方式运行待运行行为树并得到运行结果,使得测试人员可以得到预期的运行结果,更加快速的定位到故障节点,提高了故障节点的定位速度,节省了时间成本;另一方面,测试客户端获取运行结果后对运行结果进行差异性的绘制,使得测试人员可以直接的找出所有的故障节点,避免了故障节点的遗漏,使得游戏的运行更加顺畅,提高了用户体验;进一步的,通过发送RPC信息,采用远程过程调用协议进行通信,不但可以保证测试客户端以及游戏客户端的安全,而且可以实现跨语言平台调用,使得测试更加方便。
下面,将对本示例实施方式中上述故障节点定位方法的各步骤进行详细的说明。
在步骤S110中,利用一网络消息服务器接收一测试客户端发送的包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息。
在本示例实施方式中,上述测试客户端例如可以是AI Debug(ArtificialIntelligence Debug,人工智能消除故障)客户端;上述RPC(Remote Procedure CallProtocol,远程过程调用协议)信息例如可以包括行为树标识、运行方式;也可以包括函数名、发送/接收消息等,本示例实施方式对此不做特殊限制;上述运行方式例如可以包括单步联机执行单次行为树运行、多步联机执行单次行为树运行、单步联机执行多次行为树运行以及多步联机执行多次行为树运行等等,本示例实施方式对此不做特殊限制。在本示例中,首先开启测试客户端(即AI Debug),然后将包括上述行为树标识(例如可以是目标行为树ID)以及上述运行方式(例如可以是单步联机执行单次行为树运行)的RPC信息发送至网络消息服务器(例如可以是Http Server)中。
在步骤S120中,通过所述网络消息服务器将所述RPC信息发送至一行为树运行服务器中,并由所述行为树运行服务器根据所述行为树标识获取待运行行为树。
在本示例实施方式中,例如,可以通过Http Server将上述RPC信息发送至行为树运行服务器(AI Runner)中;AI Runner接收RPC信息后,根据上述行为树标识获取待运行行为树,该待运行行为树可以参考图2所示。
在步骤S130中,利用所述行为树运行服务器将所述待运行行为树加载至一NPC场景中,并根据所述运行方式运行所述待运行行为树以得到一与所述待运行行为树关联的运行结果。参考图3所示,运行上述待运行行为树可以包括步骤S1302~S1304。其中:
在步骤S1302中,根据所述运行方式运行所述待运行行为树,并对所述待运行行为树上已经运行的各节点进行标识。
在本示例实施方式中,当AI Runner接收到上述RPC信息后,将上述待运行行为树加载至NPC场景中,然后根据上述运行方式运行该待运行行为树;进一步的,每执行成功待运行行为树上的一个节点后,就为该节点打上一个成功标记;对执行失败的节点,为该节点打上失败标记;更进一步的,为了使得待运行行为树可以在运行的过程中,停止在某一步或者某一次运行上,可以为待运行行为树设置一预设运行时间(Duration),该预设运行时间例如可以是3s、5s或者10s等等,可以根据实际需要自行调整,本示例对此不做特殊限制;更进一步的,为了可以较为容易的调试定位,在上一次运行完毕后不立即执行下一次运行,可以为待运行行为树设置一预设间隔运行时间(Interval),该预设间隔运行时例如可以是30s、1min或者2min等等,可以根据实际需要自行调整,本示例对此不做特殊限制。详细而言:
当AI Runner接收到上述RPC信息后,将上述待运行行为树加载至NPC中,然后根据上述运行方式(例如是单步联机执行单次行为树运行)运行该待运行行为树;然后,每执行成功待运行行为树上的一个节点后,就为该节点打上一个成功标记;对执行失败的节点,为该节点打上失败标记;参考图4所示,待运行行为树中运行成功的节点可以以底色为灰色的标识进行标记,运行失败的节点可以以底色为白色的标识进行标记;此外,在本公开的其他示例实施方式中,也可以以其他的标识分别对运行成功的节点以及运行失败的节点进行标记,本示例实施方式对此不做特殊限制。进一步的,当上述运行方式为多步联机执行多次行为树运行时,首先设置该待运行行为树的预设运行时间(例如可以是10s)以及预设间隔预设时间(例如可以是1min),参考图5所示,点击页面上的Log按钮,然后设置Duration为10s,Interval为1min,设置完成后,点击Accept按钮使得待运行行为树按照多步联机执行多次行为树运行的方式运行,然后运行10s后停止运行并得到运行结果;然后间隔1min后,继续运行该待运行行为树;最终,将所有的运行结果汇总,然后分页查看各运行结果,使得测试人员可以更加方便的看到各部分的运行结果,同时也提高了测试的效率。
在步骤S1304中,当所述待运行行为树上的各所述节点均完成标识时,得到与所述待运行行为树关联的运行结果。
在本示例实施方式中,当运行完该待运行行为树上的所有节点并对该待运行行为书上的所有节点都完成标识时,得到一运行结果;进一步的,将包括该运行结果的RPC信息发送至Http Server中。
在步骤S140中,利用所述网络消息服务器接收所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
具体而言:Http Server接收到该运行结果后,再将包括该运行结果的RPC信息发送至AI Debug客户端;当AI Debug客户端接收到该运行结果后,利用AI树编辑器将该运行结果进行差异性的绘制,以可视化树的方式将执行过的分支和未执行过的分支以颜色(也可以是图形或者其他标识)进行标记,使得测试人员可以直观的观察到具体的执行结果,进而具体的定位到出现故障的节点。此外,在本公开的其他示例性实施例中,也可以根据实际情况以其他的方式处理上述运行结果以使得测试人员可以更加直观的观察到具体的执行结果,本示例性实施例中对此不做特殊限定。
本示例实施方式还提供了另一种故障节点定位方法。参考图6所示,该故障几点定位方法包括步骤S610以及步骤S620。其中:
在步骤S610中,为游戏客户端配置一IP地址以及一端口号并将所述IP地址以及所述端口号发送至所述测试客户端。
在本示例实施方式中,为了使得AI Debug客户端与游戏客户端之间更加方便的建立连接,可以为游戏客户端配置一IP地址以及一端口号;并将配置好的IP地址以及端口号发送至AI Debug客户端。
在步骤S620中,当所述测试客户端开启时,通过所述IP地址以及所述端口号建立与所述游戏客户端的连接。
在本示例实施方式中,当AI Debug客户端接收到上述IP地址以及端口号后,每一次AI Debug客户端开启时可以直接输入IP地址以及端口号建立AI Debug客户端与游戏客户端之间的连接。此外,在本公开的其他示例性实施例中,也可以根据实际情况以其他的方式建立AI Debug客户端与游戏客户端之间的连接,本示例性实施例中对此不做特殊限定。
在本公开的另一种示例实施方式中,为了提高测试速度,可以删除上述待运行行为树中与待定位故障节点关联的分支无关的其他分支;具体而言:为了缩小执行范围,可以删除上述待运行行为树中与待定位故障节点关联的分支无关且运行正常的分支,然后单独执行该与待定位故障节点关联的分支;
进一步的,为了防止NPC进入其他分支,可以为上述待运行行为树中与待定位故障节点关联的分支增加阻碍节点;具体而言:
在与待定位故障节点关联的分支左右,增加阻碍节点(例如可以是AlwaysTrue节点或者AlwaysFalse节点等等);使得在NPC即将进入其他分支时,会直接返回AlwaysTrue节点或者AlwaysFalse节点,以此来提醒测试人员。
更进一步的,为了方便确认待运行行为树中需要执行的节点是否执行到以及是否执行成功,可以在与该待执行节点关联的分支前后分别加入输入和/或输出节点;具体而言:
参考图7所示,例如,需要在待运行行为树中执行一个“距离小于20”的节点,为了确认已经执行到“距离小于20”的节点或者确认“距离小于20”的节点已经执行,可以在“距离小于20”的节点前后加入一DebugMessage节点,然后分别填写信息字符串“BeforeTest”以及“BeforeCheck”等(参考图8所示),然后保存上述待运行行为树,并将保存后的待运行行为树重新加载至NPC中,若在执行的过程中,两个DebugMessage节点“BeforeTest”以及“BeforeCheck”均打印成功后,则证明“距离小于20”的节点执行成功。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
本示例实施方式还提供了一种故障节点定位装置。参考图9所示,该故障节点定位装置可以包括:测试客户端910、网络消息服务器920以及行为树运行服务器930。其中:
测试客户端910,用于向网络消息服务器发送包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息;
网络消息服务器920,用于接收所述RPC信息并将所述RPC信息发送至一行为树运行服务器中;
行为树运行服务器930,用于接收所述RPC信息并根据所述行为树标识获取待运行行为树,以及,将所述待运行行为树加载至一NPC场景中,然后根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果;
所述网络消息服务器920还用于,获取所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
在本示例实施方式中,所述运行方式包括单步联机执行单次行为树运行、多步联机执行单次行为树运行、单步联机执行多次行为树运行以及多步联机执行多次行为树运行中的一种或多种。
在本示例实施方式中,根据所述运行方式运行待运行行为树后得到一与所述待运行行为树关联的运行结果包括:
将所述RPC信息发送至一行为树运行服务器中;所述行为树运行服务器接收所述RPC信息并根据所述运行方式运行所述待运行行为树,并对所述待运行行为树上已经运行的各节点进行标识;当所述待运行行为树上的各所述节点均完成标识时,得到与所述待运行行为树关联的运行结果。
在本示例实施方式中,在根据所述运行方式运行所述待运行行为树前还包括:
为所述待运行行为树配置一预设运行时间以及一预设间隔运行时间。
在本示例实施方式中,在得到与所述待运行行为树关联的运行结果后还包括:
将与所述待运行行为树关联的运行结果发送至一网络消息服务器中。
在本示例实施方式中,所述故障节点定位装置还包括:
配置模块可以用于为游戏客户端配置一IP地址以及一端口号并将所述IP地址以及所述端口号发送至所述测试客户端。
连接模块可以用于当所述测试客户端开启时,通过所述IP地址以及所述端口号建立与所述游戏客户端的连接。
在本示例实施方式中,所述故障节点定位装置还包括:
删除模块可以用于删除所述待运行行为树中与待定位故障节点关联的分支无关的其他分支。
在本示例实施方式中,所述故障节点定位装置还包括:
第一节点增加模块可以用于为所述待运行行为树中与待定位故障节点关联的分支增加阻碍节点。
在本示例实施方式中,所述故障节点定位装置还包括:
第二节点增加模块:用于为所述待运行行为树中与待定位故障节点关联的分支增加输入和/或输出节点。
上述故障节点定位装置中各模块的具体细节已经在对应的故障节点定位方法中进行了详细想描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

Claims (18)

1.一种故障节点定位方法,其特征在于,包括:
利用一网络消息服务器接收一测试客户端发送的包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息;
通过所述网络消息服务器将所述RPC信息发送至一行为树运行服务器中,并由所述行为树运行服务器根据所述行为树标识获取待运行行为树;以及
利用所述行为树运行服务器将所述待运行行为树加载至一NPC场景中,并根据所述运行方式运行所述待运行行为树以得到一与所述待运行行为树关联的运行结果;
利用所述网络消息服务器接收所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
2.根据权利要求1所述的故障节点定位方法,其特征在于,所述运行方式包括单步联机执行单次行为树运行、多步联机执行单次行为树运行、单步联机执行多次行为树运行以及多步联机执行多次行为树运行中的一种或多种。
3.根据权利要求1所述的故障节点定位方法,其特征在于,根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果包括:
根据所述运行方式运行所述待运行行为树,并对所述待运行行为树上已经运行的各节点进行标识;
当所述待运行行为树上的各所述节点均完成标识时,得到与所述待运行行为树关联的运行结果。
4.根据权利要求3所述的故障节点定位方法,其特征在于,在根据所述运行方式运行所述待运行行为树前还包括:
为所述待运行行为树配置一预设运行时间以及一预设间隔运行时间。
5.根据权利要求3所述的故障节点定位方法,其特征在于,在得到与所述待运行行为树关联的运行结果后还包括:
将与所述待运行行为树关联的运行结果发送至一网络消息服务器中。
6.根据权利要求1所述的故障节点定位方法,其特征在于,所述故障节点定位方法还包括:
为游戏客户端配置一IP地址以及一端口号并将所述IP地址以及所述端口号发送至所述测试客户端;
当所述测试客户端开启时,通过所述IP地址以及所述端口号建立与所述游戏客户端的连接。
7.根据权利要求1所述的故障节点定位方法,其特征在于,所述故障节点定位方法还包括:
删除所述待运行行为树中与待定位故障节点关联的分支无关的其他分支。
8.根据权利要求1所述的故障节点定位方法,其特征在于,所述故障节点定位方法还包括:
为所述待运行行为树中与待定位故障节点关联的分支增加阻碍节点。
9.根据权利要求1所述的故障节点定位方法,其特征在于,所述故障节点定位方法还包括:
为所述待运行行为树中与待定位故障节点关联的分支增加输入和/或输出节点。
10.一种故障节点定位装置,其特征在于,包括:
测试客户端,用于向网络消息服务器发送包括与待运行行为树关联的行为树标识以及与待运行行为树关联的运行方式的RPC信息;
网络消息服务器,用于接收所述RPC信息并将所述RPC信息发送至一行为树运行服务器中;
行为树运行服务器,用于接收所述RPC信息并根据所述行为树标识获取待运行行为树,以及,将所述待运行行为树加载至一NPC场景中,然后根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果;
所述网络消息服务器还用于,获取所述运行结果并将所述运行结果发送至所述测试客户端以使得所述测试客户端对所述运行结果进行差异性的绘制并根据绘制后的运行结果定位故障节点。
11.根据权利要求10所述的故障节点定位装置,其特征在于,所述运行方式包括单步联机执行单次行为树运行、多步联机执行单次行为树运行、单步联机执行多次行为树运行以及多步联机执行多次行为树运行中的一种或多种。
12.根据权利要求10所述的故障节点定位装置,其特征在于,根据所述运行方式运行所述待运行行为树并得到一与所述待运行行为树关联的运行结果包括:
根据所述运行方式运行所述待运行行为树,并对所述待运行行为树上已经运行的各节点进行标识;
当所述待运行行为树上的各所述节点均完成标识时,得到与所述待运行行为树关联的运行结果。
13.根据权利要求12所述的故障节点定位装置,其特征在于,在根据所述运行方式运行所述待运行行为树前还包括:
为所述待运行行为树配置一预设运行时间以及一预设间隔运行时间。
14.根据权利要求12所述的故障节点定位装置,其特征在于,在得到与所述待运行行为树关联的运行结果后还包括:
将与所述待运行行为树关联的运行结果发送至一网络消息服务器中。
15.根据权利要求10所述的故障节点定位装置,其特征在于,所述故障节点定位装置还包括:
配置模块,用于为游戏客户端配置一IP地址以及一端口号并将所述IP地址以及所述端口号发送至所述测试客户端;
连接模块,用于当所述测试客户端开启时,通过所述IP地址以及所述端口号建立与所述游戏客户端的连接。
16.根据权利要求10所述的故障节点定位装置,其特征在于,所述故障节点定位装置还包括:
删除模块,用于删除所述待运行行为树中与待定位故障节点关联的分支无关的其他分支。
17.根据权利要求10所述的故障节点定位装置,其特征在于,所述故障节点定位装置还包括:
第一节点增加模块,用于为所述待运行行为树中与待定位故障节点关联的分支增加阻碍节点。
18.根据权利要求10所述的故障节点定位装置,其特征在于,所述故障节点定位装置还包括:
第二节点增加模块,用于为所述待运行行为树中与待定位故障节点关联的分支增加输入和/或输出节点。
CN201710156100.7A 2017-03-16 2017-03-16 故障节点定位方法及系统 Active CN106899441B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710156100.7A CN106899441B (zh) 2017-03-16 2017-03-16 故障节点定位方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710156100.7A CN106899441B (zh) 2017-03-16 2017-03-16 故障节点定位方法及系统

Publications (2)

Publication Number Publication Date
CN106899441A true CN106899441A (zh) 2017-06-27
CN106899441B CN106899441B (zh) 2019-09-03

Family

ID=59194092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710156100.7A Active CN106899441B (zh) 2017-03-16 2017-03-16 故障节点定位方法及系统

Country Status (1)

Country Link
CN (1) CN106899441B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943707A (zh) * 2017-12-19 2018-04-20 网易(杭州)网络有限公司 行为树的测试方法、装置和存储介质以及终端
CN110688301A (zh) * 2019-08-22 2020-01-14 浙江口碑网络技术有限公司 服务器测试方法、装置、存储介质及计算机设备
CN110891044A (zh) * 2018-09-11 2020-03-17 中国科学院信息工程研究所 一种网络测试场景中的npc生成及刻画方法
CN112749098A (zh) * 2021-01-28 2021-05-04 深圳市东微智能科技股份有限公司 行为树的调试方法、设备及介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8170946B2 (en) * 2004-08-21 2012-05-01 Co-Exprise, Inc. Cost management file translation methods, systems, and apparatuses for extended commerce
CN103440199A (zh) * 2013-08-27 2013-12-11 百度在线网络技术(北京)有限公司 测试引导方法和装置
CN103838563A (zh) * 2012-11-27 2014-06-04 台博机器人股份有限公司 自动装置的程序开发方法
CN104834595A (zh) * 2015-02-15 2015-08-12 网易(杭州)网络有限公司 一种可视化自动测试方法及系统
CN105068929A (zh) * 2015-08-06 2015-11-18 网易(杭州)网络有限公司 测试脚本生成方法和装置、测试方法、测试装置以及测试系统
CN106155658A (zh) * 2015-04-08 2016-11-23 广州四三九九信息科技有限公司 基于u3d插件机制实现的行为树编辑器
CN106155750A (zh) * 2016-07-29 2016-11-23 腾讯科技(深圳)有限公司 一种资源文件的加载方法和装置
CN106339302A (zh) * 2016-08-22 2017-01-18 腾讯科技(深圳)有限公司 客户端的测试方法和装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8170946B2 (en) * 2004-08-21 2012-05-01 Co-Exprise, Inc. Cost management file translation methods, systems, and apparatuses for extended commerce
CN103838563A (zh) * 2012-11-27 2014-06-04 台博机器人股份有限公司 自动装置的程序开发方法
CN103440199A (zh) * 2013-08-27 2013-12-11 百度在线网络技术(北京)有限公司 测试引导方法和装置
CN104834595A (zh) * 2015-02-15 2015-08-12 网易(杭州)网络有限公司 一种可视化自动测试方法及系统
CN106155658A (zh) * 2015-04-08 2016-11-23 广州四三九九信息科技有限公司 基于u3d插件机制实现的行为树编辑器
CN105068929A (zh) * 2015-08-06 2015-11-18 网易(杭州)网络有限公司 测试脚本生成方法和装置、测试方法、测试装置以及测试系统
CN106155750A (zh) * 2016-07-29 2016-11-23 腾讯科技(深圳)有限公司 一种资源文件的加载方法和装置
CN106339302A (zh) * 2016-08-22 2017-01-18 腾讯科技(深圳)有限公司 客户端的测试方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
熊海军,朱永利等: "基于行为树的协议建模方法及其应用研究", 《计算机应用研究》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107943707A (zh) * 2017-12-19 2018-04-20 网易(杭州)网络有限公司 行为树的测试方法、装置和存储介质以及终端
CN110891044A (zh) * 2018-09-11 2020-03-17 中国科学院信息工程研究所 一种网络测试场景中的npc生成及刻画方法
CN110891044B (zh) * 2018-09-11 2021-04-27 中国科学院信息工程研究所 一种网络测试场景中的npc生成及刻画方法
CN110688301A (zh) * 2019-08-22 2020-01-14 浙江口碑网络技术有限公司 服务器测试方法、装置、存储介质及计算机设备
CN110688301B (zh) * 2019-08-22 2021-03-02 浙江口碑网络技术有限公司 服务器测试方法、装置、存储介质及计算机设备
CN112749098A (zh) * 2021-01-28 2021-05-04 深圳市东微智能科技股份有限公司 行为树的调试方法、设备及介质

Also Published As

Publication number Publication date
CN106899441B (zh) 2019-09-03

Similar Documents

Publication Publication Date Title
CN106899441A (zh) 故障节点定位方法及装置
US11056017B2 (en) System for dynamically provisioning cyber training environments
CN106126402B (zh) 加速器异常的处理方法及装置
US8667119B2 (en) System and method for re-generating packet load for load test
CN113067728A (zh) 一种网络安全攻防试验平台
CN112187585B (zh) 网络协议测试方法及装置
CN104536890B (zh) 测试系统、方法和装置
CN106095666A (zh) 游戏自动化测试方法及相关装置
CN106528395A (zh) 测试用例的生成方法及装置
WO2020106779A8 (en) Testing as a service for cloud gaming
CN103580942B (zh) 一种模拟串口测试方法和装置
CN107153603A (zh) 游戏的模拟测试方法、装置及系统
CN106559289A (zh) Sslvpn网关的并发测试方法及装置
CN107943707A (zh) 行为树的测试方法、装置和存储介质以及终端
CN114003451B (zh) 一种接口测试方法、装置、系统及介质
CN103002019B (zh) 浏览器及浏览器发送页游消息的方法
CN114328217A (zh) 应用的测试方法、装置、设备、介质及计算机程序产品
JP2015231138A (ja) サイバー攻撃演習システム、演習環境提供方法、および、演習環境提供プログラム
CN112463510A (zh) 一种临时限速服务器测试系统的部署方法及装置
CN106464521A (zh) 用于确定性地自动配置设备的方法与系统
Cocar et al. Utilizing Minecraft bots to optimize game server performance and deployment
CN108833961A (zh) 获取飞行记录数据的方法、服务器和系统
CN112988267A (zh) 加载方法、装置、存储介质及电子设备
CN110414021B (zh) 工业物联网的边缘设备事件规则产生系统、装置和方法
TW201402181A (zh) 劇情指令執行方法和裝置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant