atm系统的用例模型_战斗系统执行式测试经验汇总
(注:文章內(nèi)圖片均為項(xiàng)目?jī)?nèi)部資源,請(qǐng)勿隨意轉(zhuǎn)載)
模塊簡(jiǎn)介
L18,倩女幽魂隱世錄這款游戲,在我加入項(xiàng)目后,以19.5.30測(cè)試為分界線,經(jīng)歷過一次幾乎是整體規(guī)模的迭代。由傳統(tǒng)武俠式MMO轉(zhuǎn)變?yōu)橘惒╋L(fēng)的ARPG的過程,游戲的核心戰(zhàn)斗部分經(jīng)歷了一次翻天覆地的變化。
2018.1230版本游戲的核心戰(zhàn)斗方式由“法術(shù)卡牌 + 隨從卡牌 + 職業(yè)機(jī)制”偏策略的玩法轉(zhuǎn)變?yōu)椤爸鹘菓?zhàn)斗動(dòng)作(擬態(tài)式) + 隨從戰(zhàn)斗控制(執(zhí)行式)”這樣更具動(dòng)作性的體驗(yàn)。項(xiàng)目組在盡可能的在不觸動(dòng)戰(zhàn)斗底層邏輯的基礎(chǔ)上,進(jìn)行了以上的調(diào)整。目前的效果也是非??捎^的。
最新版的戰(zhàn)斗測(cè)試場(chǎng)景而這篇文章,目的是為了闡述,作為執(zhí)行式負(fù)責(zé)人,我針對(duì)具體到單個(gè)執(zhí)行式測(cè)試各個(gè)細(xì)節(jié)的測(cè)試心得,以及結(jié)合項(xiàng)目開發(fā)過程,關(guān)于模塊整體把控的個(gè)人理解。
執(zhí)行式,以更通俗的話來介紹,就是玩家的隨從。在游戲核心戰(zhàn)斗定位于“擬態(tài)式 + 執(zhí)行式”的戰(zhàn)斗機(jī)制的前提下,執(zhí)行式,也就是隨從,對(duì)于戰(zhàn)斗的重要性可謂是占據(jù)了半壁江山。
執(zhí)行式作為玩家的隨從,其主要的戰(zhàn)斗方式是通過玩家的召喚行為,在場(chǎng)景中根據(jù)配置的AI進(jìn)行戰(zhàn)斗。玩家可以通過一定的方式控制執(zhí)行式的戰(zhàn)斗行為和戰(zhàn)斗邏輯,配合擬態(tài)式(主角自身的戰(zhàn)斗方式),進(jìn)行一系列的副本戰(zhàn)斗。
目前已經(jīng)確定制作完成的執(zhí)行式已經(jīng)超過了60個(gè),遠(yuǎn)遠(yuǎn)大于目前規(guī)劃的擬態(tài)式數(shù)量(5個(gè)),單個(gè)執(zhí)行式的測(cè)試條目本身就數(shù)量龐大,測(cè)試的工作量是巨大的。
Checklist追加
執(zhí)行式測(cè)試量大,實(shí)際的測(cè)試內(nèi)容分配給了多個(gè)測(cè)試小伙伴。作為測(cè)試負(fù)責(zé)人,總結(jié)測(cè)試方法,指導(dǎo)相關(guān)測(cè)試人員,以及幫助對(duì)執(zhí)行式有興趣的人員了解相關(guān)模塊, 制作一個(gè)完備的Checklist,是很有必要的。
從checklist條目也可得知,執(zhí)行式的測(cè)試內(nèi)容巨大用例框架
以執(zhí)行式為中心,縱觀整個(gè)戰(zhàn)斗系統(tǒng),以下是關(guān)于執(zhí)行式的用例設(shè)計(jì)框架的思維導(dǎo)圖:
用例思維導(dǎo)圖用例設(shè)計(jì)可以基本分為:與執(zhí)行式有關(guān)的戰(zhàn)斗基本功能、與其他玩法模塊交叉、技能實(shí)現(xiàn)和技能表現(xiàn)、數(shù)值平衡類測(cè)試四塊大測(cè)試點(diǎn)。
所以在實(shí)際編寫用例時(shí),每個(gè)執(zhí)行式會(huì)基于一個(gè)由負(fù)責(zé)人提前編寫完成的用例模板的基礎(chǔ)上去編寫各自的用例。再由于快速迭代的背景,保持用例模板的及時(shí)更新也是非常重要的。易協(xié)作和用例平臺(tái)對(duì)此幫助很大,在驗(yàn)新需求時(shí),可以通過需求單的特殊字段去自動(dòng)生成一條用例,協(xié)助我們驗(yàn)單后及時(shí)的維護(hù)更新用例。
測(cè)試人員可以再根據(jù)每個(gè)執(zhí)行式具體的游戲設(shè)計(jì)需求以及實(shí)現(xiàn)的細(xì)節(jié),在模板的基礎(chǔ)上展開,設(shè)計(jì)具體的測(cè)試用例。一切的出發(fā)點(diǎn)都是為了更加優(yōu)良的游戲表現(xiàn)和游戲質(zhì)量。
(用例就不給看了)
通用·交叉測(cè)試點(diǎn)也是執(zhí)行式負(fù)責(zé)人(我)進(jìn)行維護(hù),主要是所有執(zhí)行式通用的功能, 基本包含了所有與執(zhí)行式有關(guān)的戰(zhàn)斗基本功能、與其他玩法模塊交叉的測(cè)試用例。無需針對(duì)單個(gè)執(zhí)行式去分別執(zhí)行用例,造成不必要的效率低下。
交叉測(cè)試點(diǎn)
抽卡、配卡、培養(yǎng)界面
抽卡、配卡、培養(yǎng)界面等模塊,實(shí)際上有其他QA負(fù)責(zé)功能測(cè)試,但執(zhí)行式作為模塊的重要組成,執(zhí)行式測(cè)試時(shí)也需要注意交叉測(cè)試內(nèi)容。對(duì)應(yīng)模塊的QA對(duì)執(zhí)行式的具體設(shè)計(jì)很可能是不清晰的,會(huì)遺漏與執(zhí)行式相關(guān)的測(cè)試點(diǎn),這就需要執(zhí)行式與其交叉模塊的負(fù)責(zé)人員妥善的溝通,同步信息,確保質(zhì)量。
抽卡、配卡、培養(yǎng)這塊,針對(duì)執(zhí)行式本身,更多的是顯示check。立繪、模型、執(zhí)行式基本屬性、技能描述、各種交互玩法的表現(xiàn)等等。邏輯簡(jiǎn)單,重在細(xì)節(jié)。
值得注意的是我們需要了解在各個(gè)場(chǎng)景下,模型的顯示規(guī)格。不同的場(chǎng)景,策劃和美術(shù)通過需求確定使用不同規(guī)格的模型prefab。在培養(yǎng)界面,展示用的執(zhí)行式模型使用的是gm_ui規(guī)格(高模+UI展示)的prefab。我們完全可以在unity環(huán)境下去檢查,不僅僅是通過肉眼,主觀的判斷這個(gè)模型的精度是否符合需求。
針對(duì)抽卡的表現(xiàn),也做了對(duì)應(yīng)的GM指令,自動(dòng)化輔助測(cè)試。輸入不同的指令和參數(shù),可以選擇檢查所有執(zhí)行式的抽卡表現(xiàn),并且提供多種跑查方式,方便回歸。
可以輸出圖片結(jié)果提供參考,穩(wěn)定后也可以直接做圖片比對(duì)配卡、培養(yǎng)相關(guān)的展示界面牽涉到多個(gè)界面,需要保證界面以及界面細(xì)節(jié)的覆蓋度。在整體上協(xié)助對(duì)應(yīng)模塊的負(fù)責(zé)人保證模塊質(zhì)量。
執(zhí)行式負(fù)責(zé)人員更多的是保證展示內(nèi)容的正確性功能上更多的可以依靠對(duì)應(yīng)模塊負(fù)責(zé)人,我們進(jìn)行輔助部分界面的交互和展示內(nèi)容較多,此時(shí)就要細(xì)心了。
此前出現(xiàn)過一個(gè)漏測(cè)的問題:
某個(gè)執(zhí)行式點(diǎn)擊對(duì)應(yīng)的交互按鈕,彈出了一個(gè)錯(cuò)誤的界面。原因是因?yàn)檫@個(gè)交互按鈕功能是新加的,對(duì)應(yīng)功能負(fù)責(zé)人沒有溝通告知,即使肉眼清晰可見,執(zhí)行式測(cè)試人員也想當(dāng)然的沒有針對(duì)新增的按鈕進(jìn)行任何的測(cè)試。導(dǎo)致部分策劃配置錯(cuò)誤的執(zhí)行式,在點(diǎn)擊交互按鈕后彈出了錯(cuò)誤的界面。
整個(gè)界面的展示內(nèi)容和可交互內(nèi)容非常多不能放過任何一個(gè)測(cè)試細(xì)節(jié)
在模塊交叉測(cè)試中,本身的測(cè)試難度并不大, 更重要的就是細(xì)心和溝通,盡善盡美。
與執(zhí)行式有關(guān)的戰(zhàn)斗基本功能
戰(zhàn)斗面板·執(zhí)行式相關(guān)(不給看)戰(zhàn)斗基本功能,主要是戰(zhàn)斗面板功能的測(cè)試。例如自動(dòng)戰(zhàn)斗功能、執(zhí)行式召喚、使用技能等等相對(duì)于戰(zhàn)斗面板的表現(xiàn)。具體到單個(gè)執(zhí)行式的一些戰(zhàn)斗表現(xiàn),并不會(huì)放在交叉測(cè)試的用例中,而是針對(duì)對(duì)應(yīng)執(zhí)行式增加用例。
測(cè)試前要對(duì)戰(zhàn)斗系統(tǒng)有充分的了解,也要對(duì)與執(zhí)行式有關(guān)的戰(zhàn)斗功能和設(shè)定有明確的認(rèn)識(shí)。測(cè)試的難度其實(shí)不大,重點(diǎn)是對(duì)項(xiàng)目的理解,以及積極的溝通。
針對(duì)單個(gè)執(zhí)行式的整體測(cè)試
具體到單個(gè)執(zhí)行式內(nèi)容,測(cè)試的重點(diǎn)在于整體的戰(zhàn)斗表現(xiàn)。按照整個(gè)戰(zhàn)斗流程,可以分為:出場(chǎng)表現(xiàn)、戰(zhàn)斗中表現(xiàn)、死亡表現(xiàn)以及死亡后殘留的表現(xiàn)。戰(zhàn)斗中的表現(xiàn)是測(cè)試的重中之重,也是執(zhí)行式測(cè)試工作量最大的內(nèi)容,更是測(cè)試的難點(diǎn)。
執(zhí)行式的投放內(nèi)容,隨著不斷地迭代,版本穩(wěn)定后,已經(jīng)基本上做到了完全通過策劃配置去控制。
在測(cè)試執(zhí)行式前,完整地了解策劃的設(shè)計(jì)各個(gè)執(zhí)行式的需求,以及配置的方式、規(guī)則,并且保持和策劃的溝通。對(duì)提升測(cè)試執(zhí)行式的效率會(huì)有明顯的幫助,也能通過思考需求本身,結(jié)合配置表和策劃代碼的情況發(fā)現(xiàn)一些游戲內(nèi)測(cè)試時(shí)難以發(fā)現(xiàn)或復(fù)現(xiàn)的問題。
出場(chǎng)、死亡相關(guān)表現(xiàn)
出場(chǎng)、死亡表現(xiàn)包括出場(chǎng)動(dòng)畫、出場(chǎng)語音、死亡動(dòng)畫、死亡語音。目前完全通過策劃配置控制,迭代穩(wěn)定后問題很少,問題出現(xiàn)也多是迭代導(dǎo)致動(dòng)畫爛了的易檢查問題。
值得注意的是,測(cè)試時(shí)可以結(jié)合實(shí)際玩法測(cè)試一系列特殊操作后的表現(xiàn)。
比方說召喚執(zhí)行式后,快速釋放技能,動(dòng)作銜接以及語音表現(xiàn)是否正常。
之前就出現(xiàn)過一個(gè)比較整體性的問題:
因?yàn)闆]有限制召喚后釋放技能的時(shí)間,召喚執(zhí)行式后玩家可以立即使用主動(dòng)技能,出場(chǎng)動(dòng)畫和技能動(dòng)作的銜接表現(xiàn)非常差。之后策劃就做了需求,保證出場(chǎng)動(dòng)畫播放完成后玩家才能使用主動(dòng)技能,優(yōu)化了執(zhí)行式的整體表現(xiàn)。
基于執(zhí)行式切換的基本規(guī)則,游戲的出場(chǎng)語音和死亡語音出現(xiàn)了沖突情況。及時(shí)和策劃溝通確認(rèn)現(xiàn)象是否符合實(shí)際需求,保證游戲表現(xiàn)邏輯。這個(gè)案例,雖然沒有開bug單處理,是一個(gè)后期可優(yōu)化點(diǎn)。
AI相關(guān)
執(zhí)行式被召喚后,玩家可以通過主動(dòng)技或絕技釋放按鈕,控制執(zhí)行式的戰(zhàn)斗行為。在其他時(shí)間,執(zhí)行式的行為由策劃配置好的AI進(jìn)行托管。
執(zhí)行式AI一共有兩種模式,可以分為主動(dòng)進(jìn)攻模式和跟隨模式。戰(zhàn)斗面板處提供了切換模式的按鈕。
每一個(gè)執(zhí)行式AI的細(xì)節(jié)會(huì)根據(jù)執(zhí)行式自身的特性各有不同,但其基本上是基于同一個(gè)AI模板進(jìn)行編輯的。所以在發(fā)現(xiàn)AI問題時(shí),需要注意AI問題造成的影響范圍。AI的bug通常不僅僅是單個(gè)執(zhí)行式特有的問題。
執(zhí)行式AI的問題在程序底層不進(jìn)行迭代的前提下,更多的是出現(xiàn)在策劃配置層面。因?yàn)閳?zhí)行式配置關(guān)聯(lián)的配置表很多,結(jié)合了AI流程圖、策劃代碼、策劃配置表等等一系列的操作。容易出現(xiàn)許多細(xì)節(jié)上的誤差。
下例是一個(gè)很典型的AI整體邏輯表現(xiàn)型問題:
跟隨模式在初期制作完成后,策劃未考慮跟隨模式下執(zhí)行式與敵方單位的戰(zhàn)斗表現(xiàn)。導(dǎo)致跟隨模式下的執(zhí)行式進(jìn)入了一種完全的跟隨狀態(tài),就戰(zhàn)斗表現(xiàn)來說有些過于笨重了。
在BUG修復(fù)后,執(zhí)行式能夠在跟隨模式下,對(duì)進(jìn)入射程范圍內(nèi)的敵人做出鎖定并發(fā)動(dòng)進(jìn)攻的行為,但在主角保持移動(dòng)時(shí),還是會(huì)優(yōu)先跟隨著主人。這樣的戰(zhàn)斗表現(xiàn)就會(huì)自然得多。
還有一個(gè)配置普遍容易出現(xiàn)問題的例子:
出現(xiàn)問題的原因是,AI判斷的可釋放距離和傷害結(jié)算的距離,是分開配置數(shù)值的。所以在數(shù)值配置不準(zhǔn)確的情況下,會(huì)出現(xiàn)執(zhí)行式原地釋放技能或使用普攻,但是無法造成傷害的情況。
這種錯(cuò)誤配置在執(zhí)行式制作初期時(shí)有發(fā)生,測(cè)試的難度雖然不大,但是經(jīng)常會(huì)被忽略,因?yàn)橐扇∫恍┍容^特殊的測(cè)試手段才能夠復(fù)現(xiàn)這樣的問題。
目前基本上是通過游戲內(nèi)的操作去測(cè)試AI的合理性,但這樣的問題在理論上是能夠通過靜態(tài)檢查去保證AI配置和技能配置的配合是正確的,可以在后面嘗試去補(bǔ)充這塊的檢查方式。
AI經(jīng)常是整體性問題或調(diào)整,負(fù)責(zé)人一定要兜底,以及和相關(guān)測(cè)試人員同步信息AI對(duì)執(zhí)行式的整體戰(zhàn)斗表現(xiàn)起著至關(guān)重要的作用,作為負(fù)責(zé)人要做到整體的質(zhì)量把控,并把AI的機(jī)制和迭代情況同步給所有測(cè)試人員。讓測(cè)試人員了解模塊整體情況,也了解到BUG原因,提升測(cè)試的效率。說到底就是要對(duì)游戲?qū)嶋H需求有充分的理解。在某種層面上,你甚至要比策劃更了解更理解你的項(xiàng)目。
技能測(cè)試
執(zhí)行式的技能類型較多,包括:普攻、AI技能、被動(dòng)技能、主動(dòng)技能、大招等等類型。每個(gè)執(zhí)行式的每種技能類型至少都有1個(gè)技能,數(shù)量較多。
首先需要保證的是每個(gè)技能類型的觸發(fā)方式:普攻、AI技能是鑲嵌在策劃配置的AI當(dāng)中的;主動(dòng)技能、大招、閃避技能有各自特殊的觸發(fā)以及使用的方式。不過整體的技能使用邏輯,各個(gè)執(zhí)行式是一致的,可以由負(fù)責(zé)人做整體性的測(cè)試保證基本功能。
技能的細(xì)節(jié),實(shí)際各有各的配置,但之前有提到執(zhí)行式絕大部分內(nèi)容目前都可以用配置去控制。所以我們能從中找到一定的規(guī)則,與策劃確認(rèn)規(guī)則后,針對(duì)穩(wěn)定的模塊,固定的規(guī)則,進(jìn)行一系列的靜態(tài)檢查內(nèi)容。例如技能類型的檢查、技能CD符合需求、技能的描述文本內(nèi)容在限制內(nèi)不會(huì)超框等等最基本的表現(xiàn),目前已經(jīng)用整體的靜態(tài)檢查進(jìn)行兜底,使用的一年多時(shí)間里,相當(dāng)?shù)姆€(wěn)定,幫助QA快速解決了許多基礎(chǔ)配置上出現(xiàn)的問題。
通過靜態(tài)檢查保證執(zhí)行式、執(zhí)行式技能基本配置的正確性至于配置更加復(fù)雜的技能動(dòng)作和特效、技能傷害、技能特殊效果等等。我們首先還是在游戲內(nèi)去確認(rèn)整體表現(xiàn)的效果(技能動(dòng)作和特效) ,此時(shí)要注意技能在低配畫質(zhì)和高配畫質(zhì),以及開發(fā)環(huán)境與真機(jī)環(huán)境下是否會(huì)有差異。
游戲設(shè)置和游戲環(huán)境可能會(huì)影響到技能的實(shí)際表現(xiàn),曾經(jīng)也出現(xiàn)過低配環(huán)境下執(zhí)行式技能集體特效報(bào)錯(cuò)的尷尬情況,也出現(xiàn)了許多在其他玩家視角中表現(xiàn)異常的BUG。這樣的問題,實(shí)際上都是因?yàn)闆]有完整的覆蓋測(cè)試到游戲內(nèi)所有不同畫面質(zhì)量的模型或動(dòng)作或特效所導(dǎo)致的。
針對(duì)各畫質(zhì)游戲表現(xiàn)的測(cè)試,測(cè)試方法有多種:多開客戶端、選擇不同真機(jī)環(huán)境、修改游戲內(nèi)設(shè)置等。
這些都是同一測(cè)試階段集中出現(xiàn)的低模問題,這只是一部分技能的表現(xiàn)邏輯,需要關(guān)注技能本身的施放條件、技能釋放時(shí)間節(jié)點(diǎn)前后的、以及執(zhí)行式狀態(tài)(生、死、還有各種特殊狀態(tài))等等情況下,各個(gè)技能的表現(xiàn)情況。整體測(cè)試可以基于測(cè)試用例模板去實(shí)施,實(shí)際也需要結(jié)合執(zhí)行式技能的特點(diǎn)以及執(zhí)行式本身的特性,針對(duì)性的做專項(xiàng)的,更加細(xì)節(jié)性的測(cè)試。
技能傷害、特殊效果等結(jié)算相關(guān)的測(cè)試。首先是確保結(jié)算實(shí)現(xiàn)的效果。包括結(jié)算的目標(biāo)或范圍符合預(yù)期、結(jié)算時(shí)的傷害確認(rèn)、技能關(guān)聯(lián)的buff或debuff的掛接等等。
就功能測(cè)試而言,主要是利用戰(zhàn)斗測(cè)試場(chǎng)景去一一檢查技能。但我們完全能通過策劃配置以及策劃代碼去檢查更多的細(xì)節(jié),發(fā)現(xiàn)一些功能測(cè)試過程中不能輕易發(fā)現(xiàn)的問題,提升測(cè)試的效率,且進(jìn)一步保證測(cè)試質(zhì)量。
下面是一個(gè)經(jīng)典的例子:
功能測(cè)試過程想要測(cè)試出這個(gè)bug是需要一些特殊步驟的。
因?yàn)橛螒蚰J(rèn)會(huì)使用鎖定模式,且鎖定與否對(duì)于技能使用來說,正常情況下是不會(huì)有影響的,測(cè)試過程中容易忽略這樣的狀況。
但在這個(gè)案例中,策劃比較騷氣的用了一個(gè)判斷:如果主角沒有鎖定任何人時(shí),使用技能后只會(huì)播放兩個(gè)特效就結(jié)束了技能的流程。這個(gè)判斷本身是比較多余的,且造成了一個(gè)比較嚴(yán)重的技能實(shí)現(xiàn)問題。如果不通過review策劃代碼的方式,在游戲中去檢查技能,這個(gè)風(fēng)險(xiǎn)點(diǎn)是容易被遺漏的。
對(duì)配置的了解也能讓我們明確出現(xiàn)問題的原因,例如:
大招的配置中,策劃在對(duì)應(yīng)配置行都會(huì)給大招添加一個(gè)buff,去規(guī)避玩家主動(dòng)釋放的技能造成打斷大招的異?,F(xiàn)象。策劃修bug時(shí)只需要給對(duì)應(yīng)skill添加上所需的bug即可修復(fù)。
這是個(gè)制作初期就能測(cè)出來的bug,但當(dāng)時(shí)發(fā)現(xiàn)的時(shí)間比較晚了。原因便是當(dāng)時(shí)測(cè)試人員對(duì)配置規(guī)則不熟悉,且沒有測(cè)試覆蓋完整的漏測(cè)。
作為功能測(cè)試,關(guān)注游戲內(nèi)表現(xiàn)是最基本的測(cè)試原則。而去了解策劃配置方式,并且能夠理解策劃的接口調(diào)用代碼,乃至嘗試?yán)斫獬绦虻讓哟a。無論對(duì)問題原因的理解還是測(cè)試的效率上都會(huì)有很大的提升。并且可以嘗試指導(dǎo)策劃人員之后不會(huì)讓問題反復(fù),也能夠進(jìn)一步明確模塊的風(fēng)險(xiǎn)點(diǎn)在哪。
數(shù)值相關(guān)
數(shù)值測(cè)試最直接的方式就是對(duì)比飄字的數(shù)值L18的技能數(shù)值配置在了技能實(shí)現(xiàn)的過程之中。所以在迭代穩(wěn)定的前提下,僅僅只是通過戰(zhàn)斗測(cè)試場(chǎng)景肉眼觀察數(shù)值跳字的話,測(cè)試的效率和準(zhǔn)確性其實(shí)都不能得到保證。
充分了解屬性成長(zhǎng)公式、傷害結(jié)算代碼、技能加成公式等等,能夠充分的提升數(shù)值測(cè)試的效率。也讓數(shù)值測(cè)試有據(jù)可依,不僅僅是單純的看飄字,通過主觀感受和粗略的計(jì)算去確認(rèn)數(shù)值是否符合預(yù)期。
在實(shí)際檢查技能實(shí)現(xiàn)的測(cè)試過程中,通過review策劃代碼,完全可以做到將技能數(shù)值一并檢查的操作。加上記錄戰(zhàn)斗測(cè)試場(chǎng)景中實(shí)際的數(shù)值,數(shù)值測(cè)試得到了雙保險(xiǎn)。在個(gè)人層面上,我認(rèn)為自己還可以將大量的相關(guān)公式做一次整合,讓數(shù)值測(cè)試更加系統(tǒng)化,進(jìn)一步加強(qiáng)效率。
技能數(shù)值測(cè)試目前主要保證技能的加成數(shù)值與對(duì)應(yīng)培養(yǎng)等級(jí)的預(yù)期加成值對(duì)應(yīng)一致,沒有針對(duì)數(shù)值平衡性做一些針對(duì)性的測(cè)試方法。待戰(zhàn)斗系統(tǒng)徹底穩(wěn)定后,技能數(shù)值平衡性是一個(gè)可以進(jìn)行拓展的測(cè)試模塊。
傷害寫在了技能實(shí)現(xiàn)流程中特殊機(jī)制相關(guān)
變身
某些執(zhí)行式的技能加入了變身的機(jī)制。變身在L18中是一個(gè)獨(dú)立的模塊。在模塊交叉的前提下,涉及變身的技能,風(fēng)險(xiǎn)相比其他技能更高。
在測(cè)試變身技能時(shí),我們不僅僅要思考關(guān)于技能本身,更要結(jié)合變身前后的時(shí)間節(jié)點(diǎn)進(jìn)行分析,細(xì)化測(cè)試用例。還要通過策劃代碼去了解策劃是通過怎樣的方式進(jìn)行變身的操作的,錯(cuò)誤的邏輯會(huì)導(dǎo)致游戲內(nèi)許多讓人匪夷所思的現(xiàn)象。
變身接觸時(shí)的AI切換和自動(dòng)技能暫停AI的邏輯沖突變身后配置的死亡方式不對(duì),導(dǎo)致整個(gè)戰(zhàn)斗邏輯都爛了策劃在配置時(shí),沒有考慮變身和戰(zhàn)斗面板邏輯的配合皮膚
L18的高品質(zhì)執(zhí)行式擁有皮膚的拓展功能。一個(gè)執(zhí)行式擁有多個(gè)形象。而每一個(gè)形象實(shí)際實(shí)現(xiàn)的方式其實(shí)是配置一個(gè)新的執(zhí)行式。
所以在測(cè)試皮膚時(shí),除了測(cè)試解鎖皮膚的條件、流程、方式,還需要將解鎖的皮膚當(dāng)做一個(gè)全新的執(zhí)行式進(jìn)行一次完整的測(cè)試。
在430測(cè)試節(jié)點(diǎn)時(shí),不乏有執(zhí)行式普通形態(tài)沒有異常,但是執(zhí)行式皮膚的技能表現(xiàn)出現(xiàn)異常的情況。
皮膚系統(tǒng)本身有模塊的負(fù)責(zé)人,和其他交叉模塊一樣。執(zhí)行式測(cè)試人員也需要協(xié)助測(cè)試。
自走棋玩法
自走棋玩法是一個(gè)無主角玩法,是將各個(gè)執(zhí)行式當(dāng)做棋子進(jìn)行戰(zhàn)斗的一個(gè)玩法。
此時(shí)的執(zhí)行式AI又配置了一套新的,且部分執(zhí)行式的技能由于無主角的機(jī)制,實(shí)際上是無法正常使用的,需要做特殊的處理。
所以執(zhí)行式測(cè)試人員需要針對(duì)特殊的玩法,明確玩法規(guī)則,確認(rèn)技能是否需要屏蔽,或是技能是否需要允許特殊的處理或表現(xiàn)。
整體質(zhì)量把控的心得
作為執(zhí)行式測(cè)試的負(fù)責(zé)人,我比較享受的是自己能夠參與到戰(zhàn)斗系統(tǒng)的開發(fā)過程中,并且能通過自己的能力,對(duì)戰(zhàn)斗系統(tǒng),特別是自己負(fù)責(zé)的執(zhí)行式模塊進(jìn)行游戲品質(zhì)的保證和優(yōu)化。
執(zhí)行式的測(cè)試內(nèi)容多,交叉系統(tǒng)復(fù)雜。加之快速迭代,開發(fā)周期緊湊,對(duì)每一位測(cè)試人員都是不小的考驗(yàn)。在目前多次大版本的上線測(cè)試中,包括大改版前的靈系統(tǒng),執(zhí)行式模塊和戰(zhàn)斗系統(tǒng)一直表現(xiàn)穩(wěn)定。
針對(duì)測(cè)試量大的模塊,首先是合理分配測(cè)試的人力資源。目前執(zhí)行式測(cè)試主要通過執(zhí)行式的職階進(jìn)行分配,五個(gè)職階分別分配給了五位測(cè)試人員進(jìn)行測(cè)試,相對(duì)穩(wěn)定的執(zhí)行式繼而再交接給外包測(cè)試人員進(jìn)行后期的維護(hù);
其次是即使更新執(zhí)行式整體的迭代情況,向各個(gè)負(fù)責(zé)人員告知一些整體性的迭代內(nèi)容,一些經(jīng)典的BUG分享,BUG原因普及。保證讓每一位測(cè)試人員都能獲得最新最快的信息;
交叉模塊注意細(xì)節(jié),保持良好溝通。在版本回歸的過程中我們也有吃過溝通怠惰的虧,導(dǎo)致一些很弱智的問題沒有及時(shí)的發(fā)現(xiàn)。交叉模塊的風(fēng)險(xiǎn)無須贅述,避免問題的關(guān)鍵就在于測(cè)試人員的責(zé)任心以及溝通積極性;
最后就是保持學(xué)習(xí)的態(tài)度,功能測(cè)試不僅僅是發(fā)現(xiàn)bug,更要學(xué)會(huì)發(fā)掘bug的原因。這樣不僅能提高測(cè)試的效率,提升自身對(duì)游戲開發(fā)流程各個(gè)階段內(nèi)容的理解,也可以積極的影響到策劃、程序的工作,引導(dǎo)他們?nèi)ヒ?guī)避已經(jīng)犯過的錯(cuò)誤和漏洞。
測(cè)試也許是一個(gè)比較被動(dòng)的職能崗位,但一定要提醒自己保持著積極的心態(tài)和行動(dòng)力去推動(dòng)模塊,乃至整個(gè)游戲的開發(fā)進(jìn)程和產(chǎn)品質(zhì)量。
總結(jié)
以上是生活随笔為你收集整理的atm系统的用例模型_战斗系统执行式测试经验汇总的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器人等级考试一级教具_机器人等级考试一
- 下一篇: .net 获取字符串中的第一个逗号的位置