一种游戏数值平衡的自动化测试方法和系统与流程

文档序号:11063420
一种游戏数值平衡的自动化测试方法和系统与制造工艺

本发明涉及游戏测试领域,具体涉及一种游戏数值平衡的自动化测试方法和系统。



背景技术:

随着手机移动网络以及智能手机的发展,手机游戏成为越来越多人喜爱的娱乐活动。而不论是什么游戏,其平衡性都是影响游戏的黏着度和寿命的一个重要的因素。例如在角色扮演、对战类游戏或者卡牌类游戏中,玩家所使用的角色或者职业是否过于强大或者弱小,等级差别之间的压制是否合理,某件装备是否过多的影响了游戏中的人物属性等。

目前对游戏数值平衡性的测试方法,一般是先进行相关的用例设计(即制定测试的策略),并进行账号准备,然后利用准备的账号调用游戏脚本进行验证执行(通常来说是角色和角色之间的对战,或者是角色和NPC之间的对战),返回测试结果,然后再根据返回的测试结果调整账号数据,再次调用游戏脚本进行验证执行……经过多次的反复测试,最终生成测试报告。在上述测试过程中,不管是用例设计、账号准备,还是根据测试结果调整账号数据,都依赖于测试人员人工的操作以及参与,同时只要是对所测试的游戏数值有所调整,需要重新测试的时候,都需要对之前设计的测试用例,所准备的账号,所使用的游戏脚本进行维护工作,致使测试用例、账号以及游戏脚本的复用性差。

因此,一种不需要测试人员过多的人工操作,且测试中所使用的各种资源复用性更高的游戏测试方法成为现在亟需解决的问题。



技术实现要素:

本发明的目的在于提供一种游戏数值平衡的自动化测试方法和系统,以改善上述的问题。

第一方面,本发明实施例提供了一种游戏数值平衡的自动化测试方法,包括:

获取待测试的信息;

根据所述选择的待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号,并将每一组所述游戏玩家数据分配给相应的一个玩家账号;

登录玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果。

优选的,所述获取待测试的信息包括:

自动加载待测游戏的配置工具,向测试人员显示数值配置选项;

接收测试人员从所述数值配置选项中任意选取的至少一个待测试的信息。

优选的,所述待测试的信息包括:等级信息、装备信息和技能信息中的至少一种。

优选的,所述根据选择的所述待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号包括:

将选择的所述待测试的信息进行随机组合,每一种组合生成一组游戏玩家数据;

根据游戏玩家数据的组数,生成对应数量的玩家账号。

优选的,所述登录玩家账号执行游戏包括:

调用自动化脚本,自动启动待测游戏客户端并且登录所述玩家账号执行游戏的自动操作。

优选的,所述登录玩家账号执行游戏还包括:

执行至少两个玩家账号之间的依次对战,对战的次数为预设次数。

优选的,所述对战的次数为:

其中N是对战的次数,Num是玩家账号的数量,所述玩家账号的数量是所述测试人员从所述配置工具中任意设定的。

优选的,在执行完预设次数的对战后自动对所有战斗结果进行统计处理,最终生成测试结果,所述统计包括:各玩家胜率、各技能伤害区间、装备套装间伤害差异。

第二方面,本发明实施例还提供一种游戏数值平衡的自动化测试系统,包括:

游戏数值配置信息选择接收模块,用于获取待测试的信息;

玩家数据和玩家账号生成分配模块,用于根据选择的所述待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号,并将每一组所述游戏玩家数据分配给相应的一个玩家账号;

测试模块,用于登录玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果。

优选的,所述游戏数值配置信息选择接收模块包括:

自动加载单元,用于自动加载待测游戏的配置工具,向测试人员显示数值配置选项;

选择接收单元,用于接收测试人员从所述数值配置选项中任意选取的至少一个待测试的信息。

优选的,所述游戏数值配置信息包括:等级信息、装备信息和技能信息中的至少一种。

优选的,所述玩家数据和玩家账号生成分配模块包括:

玩家数据生成单元,用于将选择的所述待测试的信息进行随机组合,每一种组合生成一组游戏玩家数据;

玩家账号生成单元,用于根据游戏玩家数据的组数,生成对应数量的玩家账号;

分配单元,用于将每一组所述游戏玩家数据分配给相应的一个玩家账号。

优选的,所述测试模块包括:

玩家账号登录单元,用于调用自动化脚本,自动启动待测游戏客户端,根据玩家账号登录所述测游戏;

测试数据采集单元,用于在游戏结束时获取测试数据;

测试结果生成单元,用于根据获取的测试数据生成测试结果。

本发明实施例所提供的游戏数值平衡的自动化测试方法和系统,直接获取测试的信息,测试人员不需要预先编写用例设计,而是直接根据要测试的游戏数值,进行选择,服务器端获取了测试人员选择的待测试信息后,随机生成多组游戏玩家数据和对应的多个玩家账号,不需要测试人员自己去准备账号,玩家账号自动生成,将每一组游戏玩家数据分配给一个玩家账号,然后再登录游玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果,在这个过程中,需要测试人员手动干涉的只有前期从游戏数值配置选项中选择待测试的信息一项,当游戏数值进行过调整的时候,只需要重新从游戏数值配置选项中选择待测试的信息,后续的操作过程完 全一致,在测试过程中,使用的各种资源,例如数值配置选项、登录以及执行游戏的脚本都是一样的,复用性较之现有技术更高。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

图1示出了本发明实施例所提供的一种游戏数值平衡的自动化测试方法的流程图;

图2示出了本发明实施例所提供的游戏数值平衡的自动化测试方法中,从获取待测试的信息的具体方法的流程图;

图3示出了本发明实施例所提供的游戏数值平衡的自动化测试方法中,根据待测所选择的多数待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号的具体方法的流程图;

图4示出了本发明实施例所提供的游戏数值平衡的自动化测试系统的结构示意图;

图5示出了本发明实施例所提供的游戏数值平衡的自动化测试系统中,游戏数值配置信息选择接收模块的具体结构示意图;

图6示出了本发明实施例所提供的游戏数值平衡的自动化测试系统中,玩家数据和玩家账号生成模块的具体结构示意图;

图7示出了本发明实施例所提供的游戏数值平衡的自动化测试系统中,测试模块的具体结构示意图;

图8示出了本发明实施例所提供的游戏数值平衡的自动化测试方法和系统中,PC前端在加载了游戏配置工具,读取游戏数值配置文件后所展示给测试人员的界面的一个示例的示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前,在对游戏数值平衡的测试方法中,一般都需要测试人员进行账号数据准备,然后通过脚本进行战斗,根据战斗结果调整账号数据,进行反复测试,生成测试报告。该方法需要较多的人工干预,从用力设计、账号准备、策略调整、报告生成等都需要人工的操作以及参与,测试效率低;同时,测试时所使用资源的复用性不高,当有数值进行调整后需要进行重新测试的时候,就需要对测试策略、脚本等进行调整维护。基于此,本发明提供一种游戏数值平衡的自动化测试方法和系统。该方法和系统主要用于角色扮演类、对战类、卡牌类游戏的测试,同时还可以用于其它种类游戏的测试。

下面将结合本发明的附图和具体实施例,对本发明的技术方案进行清楚、完整地描述。

图1是本发明所提供的一种游戏数值平衡的自动化测试方法的流程图。参见图1所示,本发明实施例所提供的游戏数值平衡的自动化测试方法包括:

S101:获取待测试的信息。

在具体实现的时候,需要预先获知待测试的游戏的类型,然后根据不同的游戏类型来确定其待测的游戏数值。例如在角色扮演类游戏中,玩家所创建的游戏角色一般都会包括:技能、等级、装备、游戏角色的自身属性等;在确定了待测试游戏的类型以及待测的游戏数值之后,会根据游戏类型和待测的游戏数值生成相应的游戏数值配置文件。在该游戏数值配置文件中会包含有多个选项,多个选项会分别对应不同的待测试的游戏数值,例如可以是分别与技能、等级、装备相对应的选项。在游戏测试的时候,游戏测试前端(PC前端)自动加载配置工具,读取待测试游戏的数值配置文件,游戏的数值配置文件中包含了多个待测试游戏的游戏数值配置选项,测试人员需要从这些游戏数值配置选项中进行具体的选择,选择后所生成的信息即为待测试的信息。

具体地,参见图2所示,本发明还提供一种从游戏数值配置选项中获取待测试的信息的具体方法,包括以下步骤:

S201:自动加载待测游戏的配置工具,向测试人员显示数值配置选项。

S202:接收测试人员从所述数值配置选项中任意选取的至少一个待测试的信息。

一般地,游戏数值配置文件都是针对不同的游戏预先设置好的。游戏数值配置文件中包含多种游戏数值配置选项。而配置工具则是所有的游戏都可以通用的。PC前端会在测试开始的时候,自动加载游戏的配置工具,读取游戏数值配置文件,将游戏数值配置选项展现给测试人员。测试人员可以对游戏数值配置选项进行具体的选择或者设置,即从游数值配置选项中任意选取至少一个待测试的信息。

根据实际的测试情况以及针对不同种类的游戏,游戏数值配置选项也各不相同,例如在角色扮演类游戏中,可以针对技能、等级以及装备三项游戏数值进行测试,此时,待测试的信息可以是等级信息、装备信息和技能信息中的至少一种,用于可以针对单一的待测试信息进行测试,也可以将其中至少两种结合起来一起进行测试。而在游戏的数值配置文件中包含了技能的种类、玩家所建立的人物的等级以及多种游戏中所设置的游戏装备的相关选项。测试人员针对哪一种游戏数值进行测试,那么就针对哪一种选项进行具体的选择。

参见图8所示,本发明提供一种加载了游戏配置工具,读取游戏数值配置文件后所展示给测试人员的界面。包括了装备配置以及技能配置的选项,在该配置工具中,测试人员可以分别对装备以及技能进行配置,例如在对装备的配置中,可以具体选择不同部位的装备,并且设置于装备对应的星级、精炼等级、宝石镶嵌情况等,另外,还可以设置生成玩家账号的数量。

S102:根据所述选择的待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号,并将每一组所述游戏玩家数据分配给相应的一个玩家账号。

在具体实现的时候,在S101中已经确定了待测试的信息,测试人员触发服务器端机器人,按照选择的待测试的信息,随机生成多组游戏玩家数据和对应的多个玩家账号,每一组游戏玩家数据对应有一个玩家账号,其中,玩家账号是用于后续登录待测试游戏的客户端,这就相当于通过多个玩家账号建立了与玩家账号数量一致的游戏人物,然后通过该游戏人物进行后续的测试。

一般地,玩家账号可以是在生成游戏玩家数据的时候同时生成的,并将游戏玩家数据分配给对应的一个玩家账号,建立游戏玩家数据和玩家账号之间的对应关系。而在多次测试的时候,还可以直接改变与已有的玩家账号相对应的游戏玩家数据。

参见图3所示,本发明实施例还提供一种根据待测所选择的多数待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号具体包括:

S301:将选择的所述待测试的信息进行随机组合,每一种组合生成一组游戏玩家数据;

S302:根据游戏玩家数据的组数,生成对应数量的玩家账号。

在将待测试的信息进行随机组合的时候,会产生很多不同的组合,针对这些不同的每一种组合都会生成一组游戏玩家数据。

例如,在对某游戏的技能信息进行测试的时候,如果游戏人物可佩带的技能有三个,而测试人员在数值配置选项中选择了A、B、C、D、E五个技能,并设置由此生成10个玩家账号(玩家账户的个数可以自由设定,小于等于游戏玩家数据的最大组数即可),服务器或根据上述设定,随机生成10个佩带三个技能的玩家账号:

玩家1: A B C

玩家2: A B D

玩家3: A B E

玩家4: A C D

玩家5: A C E

玩家6: A D E

玩家7: B C D

玩家8: B C E

玩家9: B D E

玩家10: C D E

在同时,如果游戏人物的等级对技能也具备一定的影响,那么此时,10个玩家账号的等级一致,且使用的装备也一致,这样可以在后续的测试时,测试不同的技能的平衡性。

另外,还可以设置更加复杂的随机组合方式,例如如果每个技能也有相应的等级,等级不同的技能所发挥的效果也不同;或者游戏玩家在游戏中可以选择的职业的技能对不同的职业也会有不同的影响;技能施放的先后顺序会产生不同的攻击效果;甚至是属性完全一致的账号,会由于一些隐性的因素(例如暴击率、闪避、精准等属性)对最终的测试结果都会有一定的影响。这些都是可以根据具体的测试情况,在测试的时候根据实际情况进行选择,而从游戏数值配置选项中进行选择的每一种待测试的信息,都可以经过随机的组合,生成预设数量的多组游戏玩家数据。

在生成游戏玩家数据之后,相当于是在游戏的服务器中建立了相应的游戏人物,然后将这些游戏人物分配给不同的玩家账号,在后续测试的时候便能够使用玩家账号登录游戏人物。

S103:登录玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果。

在具体实现的时候,由于玩家账号是有很多个的,因此要将每一个玩家账号都要从游戏的客户端登录到游戏。具体在将玩家账号登录到游戏的时候,是通过调用自动化脚本,自动启动待测试游戏客户端并自动登录的。

在使用玩家账号登录到待测试的游戏之后,会继续调用游戏脚本执行游戏。

具体地,不同种类的游戏玩法不一样,导致执行游戏的方式也不一样。例如在偏向于玩家之间的对战类游戏中,执行游戏的方式 便是游戏玩家之间的对战;在偏向于玩家与NPC之间的对战类游戏中,执行游戏的方式便是游戏玩家和NPC之间的对战。而在玩家与玩家之间的对战、玩家和NPC之间的对战可以是多人对战也可以是单人对战。测试不同的游戏,执行游戏要根据游戏的具体玩法来确定。

进一步地,登录玩家账号执行游戏包括:执行至少两个玩家账号之间的依次对战,对战的次数为预设次数。

具体实现的时候,至少两个玩家之间的对战,可以是从所有的玩家账号中随机的选取至少两个进行对战,并控制这些玩家账号对战预设次数,然后再从所有的玩家账号中随机选取与之前玩家账号组合不同的玩家账号,再次进行预设次数的对战。

例如,在S102的示例中,生成了10个玩家账号,分别为:玩家1、玩家2、玩家3、玩家4、玩家5、玩家6、玩家7、玩家8、玩家9、玩家10。第一次选择玩家1和玩家2的组合进行两个玩家账号之间的对战,且两个玩家的对战次数为预设次数N;第二次选择玩家1和玩家3的组合进行两个玩家账号之间的对战,且两个玩家账号的对战次数为预设次数N,第三次选择玩家3、玩家4的组合进行两个玩家之间的对战,两个玩家账号的对战次数为预设次数N……,直到获取了足够的数据,或者任意的两个玩家之间都进行过预设次数N的对战之后,结束所有玩家之间的对战。

另外,也可以是从所有的玩家账号中选取至少两个玩家账号,这些玩家账号进行一次对战后,再从玩家账号中选取与之前玩家账号的组合不同的至少两个玩家账号,再次进行对战,选取的次数为预设的次数,且每一次选取的玩家账号的组合也各不相同,总的对战次数也为预设的次数。

例如,在S102的示例中,生成了10个玩家账号,分别为:玩家1、玩家2、玩家3、玩家4、玩家5、玩家6、玩家7、玩家8、玩家9、玩家10。第一次选择玩家1和玩家2的组合进行两个玩家账号之间的对战,第二次选择玩家1和玩家3的组合进行两个玩家账号之间的对战,第三次选择玩家1和玩家4进行两个玩家账号之间的对战……直到预设的对战次数剩余数量为0的时候,结束玩家之间的对战。其中,每一次对战的时候,玩家账号的组合都是不同的。

优选地,对战的次数为:

其中N是对战的次数,Num是玩家账号的数量,所述玩家账号的数量是所述测试人员从所述配置工具中任意设定的。

另外,在每次对战结束的时候,获取战斗所产生的战报日志,并在执行完预设次数的对战后自动对所有的战斗结果进行统计处理,最终生成测试结果。战斗结果可以由每次战斗所产生的战报日志中获取,统计包括:各玩家的胜率、各技能的伤害区间、装备套装间伤害差异等。另外,具体的统计项目,可以由待测试的数据来决定。例如在测试技能数值平衡性的时候,可以针对各个技能的伤害区间、技能组合不同时对于技能伤害的影响、技能释放顺序不同时对于技能伤害的影响等,同时还可以针对暴击率对于技能伤害的影响、精准、格挡、防御、闪避等属性对于技能的伤害影响等等。如果是在测试装备数值平衡性的时候,可以针对不同的套装导致的伤害差异、不同职业的套装装备在与之对应的职业的游戏人物上时,对于不同职业游戏人物的伤害差异等。具体的统计项目,在本发明中不做任何的限制,具体可以根据实际的测试情况来具体进行统计。

本发明实施例提供的游戏数值平衡的自动化测试方法,其有益效果是:直接获取待测试的信息,测试人员不需要预先编写用例设计,而是直接根据要测试的游戏数值,进行选择,服务器端获取了测试人员选择的待测试信息后,随机生成多组游戏玩家数据和对应的多个玩家账号,不需要测试人员自己去准备账号,玩家账号自动生成,将每一组游戏玩家数据分配给一个玩家账号,然后再登录游玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果,在这个过程中,需要测试人员手动干涉的只有前期从游戏数值配置选项中选择待测试的信息一项,当游戏数值进行过调整的时候,只需要重新从游戏数值配置选项中选择待测试的信息,后续的操作过程完全一致,在测试过程中,使用的各种资源,例如数值配置选项、登录以及执行游戏的脚本都是一样的,复用性较之现有技术更高。

本发明又一实施例还提供一种游戏数值平衡的自动化测试系统,参见图4所示,本发明实施例所提供的游戏数值平衡的自动化测试系统包括:

游戏数值配置信息选择接收模块,用于获取待测试的信息;

玩家数据和玩家账号生成分配模块,用于根据选择的所述待测试的信息随机生成多组游戏玩家数据和对应的多个玩家账号,并将每一组所述游戏玩家数据分配给相应的一个玩家账号;

测试模块,用于登录玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果。

本实施例中,游戏数值配置信息选择接收模块、玩家数据和玩家账号生成模块和测试模块的具体功能和交互方式,可参见图1对应的实施例的记载,在此不再赘述。

本发明实施例所提供的游戏数值平衡的自动化测试系统,其有益效果是:

通过游戏数值配置信息选择接收模块直接获取待测试的信息,测试人员不需要预先编写用例设计,而是直接根据要测试的游戏数值,进行选择,在获取了测试人员选择的待测试信息后,玩家数据和玩家账号生成模块随机生成多组游戏玩家数据和对应的多个玩家账号,不需要测试人员自己去准备账号,玩家账号自动生成,将每一组游戏玩家数据分配给一个玩家账号,然后再通过测试模块登录游玩家账号执行游戏,并在游戏结束时获取测试数据,生成测试结果,在这个过程中,需要测试人员手动干涉的只有前期从游戏数值配置选项中选择待测试的信息一项,当游戏数值进行过调整的时候,只需要重新从游戏数值配置选项中选择待测试的信息,后续的操作过程完全一致,在测试过程中,使用的各种资源,例如数值配置选项、登录以及执行游戏的脚本都是一样的,复用性较之现有技术更高。

另外,参见图5所示,本发明实施例所提供的游戏数值配置信息选择接收模块具体包括:

自动加载单元,用于自动加载待测游戏的配置工具,向测试人员显示数值配置选项;

选择接收单元,用于接收测试人员从所述数值配置选项中任意选取的至少一个待测试的信息。

本实施例中,自动加载单元和选择接收单元的具体功能和交互方式,可参见图2对应的实施例的记载,在此不再赘述。

其中,所述游戏数值配置信息包括:等级信息、装备信息和技能信息中的至少一种。

另外,参见图6所示,本发明实施例所提供的玩家数据和玩家账号生成分配模块具体包括:

玩家数据生成单元,用于将选择的所述待测试的信息进行随机组合,每一种组合生成一组游戏玩家数据;

玩家账号生成单元,用于根据游戏玩家数据的组数,生成对应数量的玩家账号;

分配单元,用于将每一组所述游戏玩家数据分配给相应的一个玩家账号。

本实施例中,玩家数据生成单元和玩家账号生成单元的具体功能和交互方式,可参见图3对应的实施例的记载,在此不再赘述。

另外,参见图7所示,本发明实施例所提供的测试模块包括:

玩家账号登录单元,用于调用自动化脚本,自动启动待测游戏客户端,根据玩家账号登录所述测游戏;

测试数据采集单元,用于在游戏结束时获取测试数据;

测试结果生成单元,用于根据获取的测试数据生成测试结果。

本实施例中,玩家账号登录单元、测试数据采集单元和测试结果生成单元的具体功能和交互方式,可参见图1中S103对应的实施例的记载,在此不再赘述。

本发明实施例所提供的方法以及系统的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1